<!DOCTYPE html>
<!--
    Licensed to the Apache Software Foundation (ASF) under one or more
    contributor license agreements.  See the NOTICE file distributed with
    this work for additional information regarding copyright ownership.
    The ASF licenses this file to You under the Apache License, Version 2.0
    (the "License"); you may not use this file except in compliance with
    the License.  You may obtain a copy of the License at
        http://www.apache.org/licenses/LICENSE-2.0
    Unless required by applicable law or agreed to in writing, software
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.
-->
<html lang="en">
    <head>
        <title>NiFi Rest API-1.19.1</title>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
        <link rel="shortcut icon" href="images/nifi16.ico"/>
        <script type="text/javascript" src="../../nifi/assets/jquery/dist/jquery.min.js"></script>
        <script type="text/javascript">
            if (typeof window.jQuery === 'undefined') {
                document.write(unescape('%3Cscript src="https://code.jquery.com/jquery-3.1.1.min.js" type="text/javascript" %3E%3C/script%3E'));
            }
        </script>
        <style>
            @import "https://fonts.googleapis.com/css?family=Open+Sans:300,300italic,400,400italic,600,600italic|Noto+Serif:400,400italic,700,700italic|Droid+Sans+Mono:400";

            html {
                overflow-y: scroll;
            }
            
            html, html a {
                -webkit-font-smoothing: antialiased;
                text-shadow: 1px 1px 1px rgba(0,0,0,0.004);
            }

            body {
                width: 62.5em;
                margin: 0 auto;
                display: block;
                font-family: "Open Sans", "DejaVu Sans", sans-serif;
            }
            
            div.header {
                margin-top: 10px;
            }
            
            img.logo {
                float: left;
                margin-right: 10px;
            }
            
            div.header > div.title {
                font-size: 30px;
                height: 50px;
                line-height: 50px;
            }
            
            .sub-title {
                font-style: italic;
                color: #aaa;
            }
            
            div.overview {
                margin-top: 10px;
                margin-bottom: 15px;
            }
            
            div.endpoint {
                margin-bottom: 10px;
            }

            /* get */
            
            div.endpoint.get {
                border: 1px solid #174961;
            }
            
            div.get div.operation-handle {
                background-color: rgba(23, 73, 97, .15);
            }
            
            div.get div.method {
                background-color: #174961;
            }
            
            div.get div.operation {
                border-top: 1px solid #174961;
            }
            
            /* post */
            
            div.endpoint.post {
                border: 1px solid #7298AC;
            }
            
            div.post div.operation-handle {
                background-color: rgba(114, 152, 172, .15);
            }
            
            div.post div.method {
                background-color: #7298AC;
            }
            
            div.post div.operation {
                border-top: 1px solid #7298AC;
            }
            
            /* put */
            
            div.endpoint.put {
                border: 1px solid #063046;
            }
            
            div.put div.operation-handle {
                background-color: rgba(6, 48, 70, .15);
            }
            
            div.put div.method {
                background-color: #063046;
            }
            
            div.put div.operation {
                border-top: 1px solid #063046;
            }
            
            /* delete */
            
            div.endpoint.delete {
                border: 1px solid #47758E;
            }
            
            div.delete div.operation-handle {
                background-color: rgba(71, 117, 142, .15);
            }
            
            div.delete div.method {
                background-color: #47758E;
            }
            
            div.delete div.operation {
                border-top: 1px solid #47758E;
            }
            
            /* operations */
            
            div.operation-handle {
                cursor: pointer;
                padding-right: 5px;
                height: 22px;
            }
            
            div.method {
                float: left;
                width: 75px;
                color: #fff;
                text-align: center;
                background-color: #7098ad;
                margin-right: 10px;
                font-weight: bold;
            }

            div.endpoint div.path {
                float: left;
                line-height: 22px;
            }

            div.summary {
                float: right;
                font-size: 12px;
                line-height: 22px;
            }

            div.operation {
                padding: 5px;
                font-size: 12px;
            }

            div.operation > div.title {
                font-weight: bold;
                color: #000;
            }
            
            div.operation > table {
                margin-left: 5px;
                margin-right: 5px;
            }
            
            div.operation div.details {
                margin-left: 5px;
                margin-bottom: 5px;
                color: #333;
            }
            
            div.operation div.description {
                margin-bottom: 10px;
            }

            div.mediatype {
                line-height: 16px;
            }

            div.mediatype > div.title {
                float: left;
                width: 70px;
            }
            
            div.mediatype div.title {
                float: left;
            }
            
            div.type {
                position: fixed;
                width: 800px;
                height: 500px;
                left: 50%;
                top: 50%;
                margin-left: -400px;
                margin-top: -250px;
                border: 3px solid #365C6A;
                box-shadow: 4px 4px 6px rgba(0, 0, 0, 0.9);
                padding: 10px;
                background-color: #eee;
                font-size: 12px;
            }
            
            div.type-container {
                overflow-y: auto;
                height: 415px;
                border-bottom: 1px solid #ccc;
            }
            
            div.close {
                border: 1px solid #aaa;
                background-color: #ddd;
                float: right;
                margin-top: 10px;
                font-weight: bold;
                height: 25px;
                line-height: 25px;
                padding: 0 10px;
                cursor: pointer;
            }
            
            div.close:hover {
                background-color: #d1d1d1;
            }
            
            div.section-header > div.title {
                font-size: 24px;
                float: left;
            }
            
            div.section-description {
                float: right;
                margin-top: 10px;
            }
            
            div.section-endpoints {
                margin-top: 10px;
            }
            
            /* tables */

            table {
                background-color: #fefefe;
                border: 1px solid #ccc;
                border-left: 6px solid #ccc;
                color: #555;
                display: block;
                margin-bottom: 12px;
                padding: 5px 8px;
            }
            
            table th {
                font-weight: bold;
                vertical-align:top;
                text-align:left;
                padding: 4px 15px;
                border-width: 0;
                white-space: nowrap;
            }
            
            table td {
                vertical-align:top;
                text-align:left;
                padding: 2px 15px;
                border-width: 0;
                white-space: nowrap;
            }
            
            table td:last-child {
                width: 99%;
                white-space: normal;
            }
            
            code.example {
                background-color: #fefefe;
                border: 1px solid #ccc;
                border-left: 6px solid #ccc;
                color: #555;
                margin-bottom: 10px;
                padding: 5px 8px;
                white-space: pre;
                display: block;
                tab-size: 4;
                -moz-tab-size: 4;
                -o-tab-size: 4;
                line-height: 20px
            }
            
            span.nested.collapsed {
                cursor: pointer;
                border: 1px solid #7298AC;
                background-color: rgba(114, 152, 172, .15);
                padding: 1px;
            }
            
            /* general */
            
            .mono {
                font-family: monospace;
            }
            
            div.clear {
                clear: both;
            }

            .hidden {
                display: none;
            }
            
            a, .link {
                cursor: pointer;
                color: #1e373f;
                font-weight: normal;
            }
            
            a:hover, .link:hover {
                color: #264c58;
                text-decoration: underline;
            }
        </style>
        <script type="text/javascript">
            $(document).ready(function () {
                // hide any open type dialogs
                $('html').on('click', function() {
                    $('div.type').hide();
                }).on('keydown', function(e) {
                    if (e.which === 27) {
                        $('div.type').hide();
                    }
                });
                
                // populate all paths - this is necessary because the @key
                // doesn't seem to reset after iterating through a nested 
                // array or object
                $('span.path').each(function() {
                    var path = $(this);
                    var endpoint = path.parent();
                    endpoint.find('div.path').text(path.text());
                });
                
                // toggles the visibility of a given operation
                $('div.operation-handle').on('click', function () {
                    $(this).next('div.operation').slideToggle();
                });
                
                // add support for clicking to view the definition of a type
                $('a.type-link').on('click', function(e) {
                    // hide any previously shown dialogs
                    $('div.type').hide();

                    // show the type selected
                    var link = $(this);
                    var typeId = link.text();
                    $('#' + typeId).show();
                    e.stopPropagation();
                });
                
                // prevent hiding when clicking on the type dialog
                $('div.type').on('click', function(e) {
                    e.stopPropagation();
                });
                
                // due to lack of support for @last when iterating objects in 
                // handlebars we need to remove the last comma from each example
                $('code.example').find('span.comma:last').remove();
                
                // populate nested examples
                $('code.example').on('click', 'span.nested', function(e) {
                    var nested = $(this).removeClass('collapsed');
                    var nestedId = nested.find('span.nested-id');
                    var nestedExample = nested.find('span.nested-example');
                    
                    // get the id of the nested example
                    var typeId = nestedId.text();
                    var example = $('#' + typeId + ' code.example').html();
                    var depth = nestedId.parents('span.open-object').length;
                    
                    // tab over as appropriate
                    example = example.replace(/(\r\n|\r|\n)/g, function(match) {
                        var tab = '\t';
                        for (var i = 0; i < depth - 1; i++) {
                            tab += '\t';
                        }
                        return match + tab;
                    });
                    
                    // copy over the example
                    nestedExample.html(example);
                    e.stopPropagation();
                });
                
                // handle close button
                $('div.close').on('click', function() {
                    $(this).closest('div.type').hide();
                });
                
                // function for organizing the endpoints
                var organizeEndpoints = function(term, container) {
                    $('div.unorganized > div.endpoints').each(function() {
                        var endpoints = $(this);
                        var path = endpoints.find('div.path').text();
                        
                        if (term === null || path.indexOf(term) === 0) {
                            endpoints.detach().appendTo(container);
                        }
                    });
                };
                
                // organize the endpoints
                organizeEndpoints('/process-groups', $('#process-group-endpoints'));
                organizeEndpoints('/controller-services', $('#controller-service-endpoints'));
                organizeEndpoints('/reporting-tasks', $('#reporting-task-endpoints'));
                organizeEndpoints('/counters', $('#counter-endpoints'));
                organizeEndpoints('/controller', $('#controller-endpoints'));
                organizeEndpoints('/connections', $('#connection-endpoints'));
                organizeEndpoints('/flowfile-queue', $('#flowfile-queue-endpoints'));
                organizeEndpoints('/processors', $('#processor-endpoints'));
                organizeEndpoints('/funnels', $('#funnel-endpoints'));
                organizeEndpoints('/remote-process-groups', $('#remote-process-group-endpoints'));
                organizeEndpoints('/input-ports', $('#input-port-endpoints'));
                organizeEndpoints('/output-ports', $('#output-port-endpoints'));
                organizeEndpoints('/labels', $('#label-endpoints'));
                organizeEndpoints('/access', $('#access-endpoints'));
                organizeEndpoints('/flow', $('#flow-endpoints'));
                organizeEndpoints('/parameter-contexts', $('#parameter-context-endpoints'));
                organizeEndpoints('/parameter-providers', $('#parameter-provider-endpoints'));
                organizeEndpoints('/provenance-events', $('#provenance-event-endpoints'));
                organizeEndpoints('/provenance', $('#provenance-endpoints'));
                organizeEndpoints('/tenants', $('#tenant-endpoints'));
                organizeEndpoints('/data-transfer', $('#data-transfer-endpoints'));
                organizeEndpoints('/policies', $('#policy-endpoints'));
                organizeEndpoints('/resources', $('#resource-endpoints'));
                organizeEndpoints('/site-to-site', $('#site-to-site-endpoints'));
                organizeEndpoints('/snippets', $('#snippet-endpoints'));
                organizeEndpoints('/system', $('#system-diagnostic-endpoints'));
                organizeEndpoints('/templates', $('#template-endpoints'));
                organizeEndpoints('/versions', $('#version-endpoints'));
                organizeEndpoints(null, $('#controller-endpoints'));

                // handle expanding/collapsing the sections
                $('div.section-header > div.title').on('click', function() {
                    $(this).parent('div.section-header').next('div.section-endpoints').slideToggle();
                });
            });
        </script>
    </head>
    <body>
        <div class="header">
            <img class="logo" src="images/bgNifiLogo.png" alt="NiFi Logo"/>
            <div class="title">/nifi-api</div>
            <div class="sub-title">NiFi Rest API 1.19.1</div>
            <div class="clear"></div>
        </div>
        <div class="clear"></div>
        <div class="overview">The Rest API provides programmatic access to command and control a NiFi instance in real time. Start and
                                            stop processors, monitor queues, query provenance data, and more. Each endpoint below includes a description,
                                            definitions of the expected input and output, potential response codes, and the authorizations required
                                            to invoke each service.</div>
        <div class="section">
            <div class="section-header">
                <div class="title link">Access</div>
                <div class="sub-title section-description">User authentication and token endpoints</div>
                <div class="clear"></div>
            </div>
            <div id="access-endpoints" class="section-endpoints hidden"></div>
        </div>
        <div class="section">
            <div class="section-header">
                <div class="title link">Controller</div>
                <div class="sub-title section-description">Get controller configuration, Manage the cluster, Create reporting tasks</div>
                <div class="clear"></div>
            </div>
            <div id="controller-endpoints" class="section-endpoints hidden"></div>
        </div>
        <div class="section">
            <div class="section-header">
                <div class="title link">Controller Services</div>
                <div class="sub-title section-description">Manage controller services, Update controller service references</div>
                <div class="clear"></div>
            </div>
            <div id="controller-service-endpoints" class="section-endpoints hidden"></div>
        </div>
        <div class="section">
            <div class="section-header">
                <div class="title link">Reporting Tasks</div>
                <div class="sub-title section-description">Manage reporting tasks</div>
                <div class="clear"></div>
            </div>
            <div id="reporting-task-endpoints" class="section-endpoints hidden"></div>
        </div>
        <div class="section">
            <div class="section-header">
                <div class="title link">Counters</div>
                <div class="sub-title section-description">Get counters, Reset counters</div>
                <div class="clear"></div>
            </div>
            <div id="counter-endpoints" class="section-endpoints hidden"></div>
        </div>
        <div class="section">
            <div class="section-header">
                <div class="title link">Flow</div>
                <div class="sub-title section-description">Get the data flow, Obtain component status, Query history</div>
                <div class="clear"></div>
            </div>
            <div id="flow-endpoints" class="section-endpoints hidden"></div>
        </div>
        <div class="section">
            <div class="section-header">
                <div class="title link">Parameter Contexts</div>
                <div class="sub-title section-description">Manage Parameter Contexts and associated validation</div>
                <div class="clear"></div>
            </div>
            <div id="parameter-context-endpoints" class="section-endpoints hidden"></div>
        </div>
        <div class="section">
            <div class="section-header">
                <div class="title link">Parameter Providers</div>
                <div class="sub-title section-description">Manage Parameter Providers and associated validation</div>
                <div class="clear"></div>
            </div>
            <div id="parameter-provider-endpoints" class="section-endpoints hidden"></div>
        </div>
        <div class="section">
            <div class="section-header">
                <div class="title link">Process Groups</div>
                <div class="sub-title section-description">Create components, Instantiate a template, Upload a template</div>
                <div class="clear"></div>
            </div>
            <div id="process-group-endpoints" class="section-endpoints hidden"></div>
        </div>
        <div class="section">
            <div class="section-header">
                <div class="title link">Processors</div>
                <div class="sub-title section-description">Create a processor, Set properties, Schedule</div>
                <div class="clear"></div>
            </div>
            <div id="processor-endpoints" class="section-endpoints hidden"></div>
        </div>
        <div class="section">
            <div class="section-header">
                <div class="title link">Connections</div>
                <div class="sub-title section-description">Create a connection, Set queue priority, Update connection destination</div>
                <div class="clear"></div>
            </div>
            <div id="connection-endpoints" class="section-endpoints hidden"></div>
        </div>
        <div class="section">
            <div class="section-header">
                <div class="title link">FlowFile Queues</div>
                <div class="sub-title section-description">View queue contents, Download flowfile content, Empty queue</div>
                <div class="clear"></div>
            </div>
            <div id="flowfile-queue-endpoints" class="section-endpoints hidden"></div>
        </div>
        <div class="section">
            <div class="section-header">
                <div class="title link">Input Ports</div>
                <div class="sub-title section-description">Create an input port, Set remote port access control</div>
                <div class="clear"></div>
            </div>
            <div id="input-port-endpoints" class="section-endpoints hidden"></div>
        </div>
        <div class="section">
            <div class="section-header">
                <div class="title link">Output Ports</div>
                <div class="sub-title section-description">Create an output port, Set remote port access control</div>
                <div class="clear"></div>
            </div>
            <div id="output-port-endpoints" class="section-endpoints hidden"></div>
        </div>
        <div class="section">
            <div class="section-header">
                <div class="title link">Remote Process Groups</div>
                <div class="sub-title section-description">Create a remote group, Enable transmission</div>
                <div class="clear"></div>
            </div>
            <div id="remote-process-group-endpoints" class="section-endpoints hidden"></div>
        </div>
        <div class="section">
            <div class="section-header">
                <div class="title link">Labels</div>
                <div class="sub-title section-description">Create a label, Set label style</div>
                <div class="clear"></div>
            </div>
            <div id="label-endpoints" class="section-endpoints hidden"></div>
        </div>
        <div class="section">
            <div class="section-header">
                <div class="title link">Funnels</div>
                <div class="sub-title section-description">Manage funnels</div>
                <div class="clear"></div>
            </div>
            <div id="funnel-endpoints" class="section-endpoints hidden"></div>
        </div>
        <div class="section">
            <div class="section-header">
                <div class="title link">Provenance</div>
                <div class="sub-title section-description">Query provenance, Search event lineage</div>
                <div class="clear"></div>
            </div>
            <div id="provenance-endpoints" class="section-endpoints hidden"></div>
        </div>
        <div class="section">
            <div class="section-header">
                <div class="title link">Provenance Events</div>
                <div class="sub-title section-description">Download content, Replay</div>
                <div class="clear"></div>
            </div>
            <div id="provenance-event-endpoints" class="section-endpoints hidden"></div>
        </div>
        <div class="section">
            <div class="section-header">
                <div class="title link">Tenants</div>
                <div class="sub-title section-description">Add users and group, Group users</div>
                <div class="clear"></div>
            </div>
            <div id="tenant-endpoints" class="section-endpoints hidden"></div>
        </div>
        <div class="section">
            <div class="section-header">
                <div class="title link">Policies</div>
                <div class="sub-title section-description">Get policies, Create policies</div>
                <div class="clear"></div>
            </div>
            <div id="policy-endpoints" class="section-endpoints hidden"></div>
        </div>
        <div class="section">
            <div class="section-header">
                <div class="title link">Resources</div>
                <div class="sub-title section-description">Get resources</div>
                <div class="clear"></div>
            </div>
            <div id="resource-endpoints" class="section-endpoints hidden"></div>
        </div>
        <div class="section">
            <div class="section-header">
                <div class="title link">Site to Site</div>
                <div class="sub-title section-description">Get available ports, Get peers</div>
                <div class="clear"></div>
            </div>
            <div id="site-to-site-endpoints" class="section-endpoints hidden"></div>
        </div>
        <div class="section">
            <div class="section-header">
                <div class="title link">Data Transfer</div>
                <div class="sub-title section-description">Send data, Receive data</div>
                <div class="clear"></div>
            </div>
            <div id="data-transfer-endpoints" class="section-endpoints hidden"></div>
        </div>
        <div class="section">
            <div class="section-header">
                <div class="title link">Snippets</div>
                <div class="sub-title section-description">Create a snippet, Move a snippet, Delete a snippet</div>
                <div class="clear"></div>
            </div>
            <div id="snippet-endpoints" class="section-endpoints hidden"></div>
        </div>
        <div class="section">
            <div class="section-header">
                <div class="title link">Templates</div>
                <div class="sub-title section-description">Download a template, Delete a template</div>
                <div class="clear"></div>
            </div>
            <div id="template-endpoints" class="section-endpoints hidden"></div>
        </div>
        <div class="section">
            <div class="section-header">
                <div class="title link">System Diagnostics</div>
                <div class="sub-title section-description">Get system diagnostics</div>
                <div class="clear"></div>
            </div>
            <div id="system-diagnostic-endpoints" class="section-endpoints hidden"></div>
        </div>
        <div class="section">
            <div class="section-header">
                <div class="title link">Versions</div>
                <div class="sub-title section-description">Manage versions of process groups</div>
                <div class="clear"></div>
            </div>
            <div id="version-endpoints" class="section-endpoints hidden"></div>
        </div>
        <div class="unorganized hidden">
            
                
<div class="endpoints">
    <span class="path hidden">/access</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets the status the client&#x27;s access</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">AccessStatusEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Unable to determine access status because the client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Unable to determine access status because the client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>Unable to determine access status because NiFi is not in the appropriate state.</td>
            </tr>
            
            <tr>
                <td>500</td>
                <td>
                    
                        string
                    
                </td>
                <td>Unable to determine access status because an unexpected error occurred.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/access/config</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Retrieves the access configuration for this NiFi</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">AccessConfigurationEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/access/kerberos</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Creates a token for accessing the REST API via Kerberos ticket exchange / SPNEGO negotiation</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        The token returned is formatted as a JSON Web Token (JWT). The token is base64 encoded and comprised of three parts. The header, the body, and the signature. The expiration of the token is a contained within the body. The token can be used in the Authorization header in the format &#x27;Authorization: Bearer &lt;token&gt;&#x27;. It is also stored in the browser as a cookie.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">text/plain</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">text/plain</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it did not contain a valid Kerberos ticket in the Authorization header. Retry this request after initializing a ticket with kinit and ensuring your browser is configured to support SPNEGO.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>Unable to create access token because NiFi is not in the appropriate state. (i.e. may not be configured to support Kerberos login.</td>
            </tr>
            
            <tr>
                <td>500</td>
                <td>
                    
                        string
                    
                </td>
                <td>Unable to create access token because an unexpected error occurred.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/access/knox/callback</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Redirect/callback URI for processing the result of the Apache Knox login sequence.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>default</td>
                <td>
                    
                        string
                    
                </td>
                <td>successful operation</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/access/knox/logout</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Performs a logout in the Apache Knox.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>default</td>
                <td>
                    
                        string
                    
                </td>
                <td>successful operation</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/access/knox/request</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Initiates a request to authenticate through Apache Knox.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>default</td>
                <td>
                    
                        string
                    
                </td>
                <td>successful operation</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/access/logout</span>
    
    
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Performs a logout for other providers that have been issued a JWT.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        string
                    
                </td>
                <td>User was logged out successfully.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Authentication token provided was empty or not in the correct JWT format.</td>
            </tr>
            
            <tr>
                <td>500</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client failed to log out.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/access/logout/complete</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Completes the logout sequence by removing the cached Logout Request and Cookie if they existed and redirects to /nifi/login.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        string
                    
                </td>
                <td>User was logged out successfully.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Authentication token provided was empty or not in the correct JWT format.</td>
            </tr>
            
            <tr>
                <td>500</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client failed to log out.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/access/oidc/callback</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Redirect/callback URI for processing the result of the OpenId Connect login sequence.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>default</td>
                <td>
                    
                        string
                    
                </td>
                <td>successful operation</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/access/oidc/exchange</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Retrieves a JWT following a successful login sequence using the configured OpenId Connect provider.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">text/plain</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        
                    
                </td>
                <td>successful operation</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/access/oidc/logout</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Performs a logout in the OpenId Provider.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>default</td>
                <td>
                    
                        string
                    
                </td>
                <td>successful operation</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/access/oidc/logoutCallback</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Redirect/callback URI for processing the result of the OpenId Connect logout sequence.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>default</td>
                <td>
                    
                        string
                    
                </td>
                <td>successful operation</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/access/oidc/request</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Initiates a request to authenticate through the configured OpenId Connect provider.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>default</td>
                <td>
                    
                        string
                    
                </td>
                <td>successful operation</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/access/token</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Creates a token for accessing the REST API via username/password</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        The token returned is formatted as a JSON Web Token (JWT). The token is base64 encoded and comprised of three parts. The header, the body, and the signature. The expiration of the token is a contained within the body. It is stored in the browser as a cookie, but also returned inthe response body to be stored/used by third party client scripts.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/x-www-form-urlencoded</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>username</td>
            <td>formData</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td></td>
        </tr>
    
        <tr>
            <td>password</td>
            <td>formData</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td></td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">text/plain</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>Unable to create access token because NiFi is not in the appropriate state. (i.e. may not be configured to support username/password login.</td>
            </tr>
            
            <tr>
                <td>500</td>
                <td>
                    
                        string
                    
                </td>
                <td>Unable to create access token because an unexpected error occurred.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/access/token/expiration</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Get expiration for current Access Token</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">AccessTokenExpirationEntity</a>
                    
                </td>
                <td>Access Token Expiration found</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Access Token not authorized</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>Access Token not resolved</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/connections/{id}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets a connection</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The connection id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ConnectionEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read Source - /{component-type}/{uuid}</div>
            
        
            
            <div>Read Destination - /{component-type}/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Updates a connection</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The connection id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ConnectionEntity</a> 
                </td>
            
            <td>The connection configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ConnectionEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write Source - /{component-type}/{uuid}</div>
            
        
            
            <div>Write Destination - /{component-type}/{uuid}</div>
            
        
            
            <div>Write New Destination - /{component-type}/{uuid} - if updating Destination</div>
            
        
            
            <div>Write Process Group - /process-groups/{uuid} - if updating Destination</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes a connection</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>version</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The revision is used to verify the client is working with the latest version of the flow.</td>
        </tr>
    
        <tr>
            <td>clientId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If the client id is not specified, new one will be generated. This value (whether specified or generated) is included in the response.</td>
        </tr>
    
        <tr>
            <td>disconnectedNodeAcknowledged</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The connection id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ConnectionEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write Source - /{component-type}/{uuid}</div>
            
        
            
            <div>Write - Parent Process Group - /process-groups/{uuid}</div>
            
        
            
            <div>Write Destination - /{component-type}/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/controller-services/{id}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets a controller service</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        If the uiOnly query parameter is provided with a value of true, the returned entity may only contain fields that are necessary for rendering the NiFi User Interface. As such, the selected fields may change at any time, even during incremental releases, without warning. As a result, this parameter should not be provided by any client other than the UI.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The controller service id.</td>
        </tr>
    
        <tr>
            <td>uiOnly</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td></td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ControllerServiceEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /controller-services/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Updates a controller service</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The controller service id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ControllerServiceEntity</a> 
                </td>
            
            <td>The controller service configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ControllerServiceEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /controller-services/{uuid}</div>
            
        
            
            <div>Read - any referenced Controller Services if this request changes the reference - /controller-services/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes a controller service</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>version</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The revision is used to verify the client is working with the latest version of the flow.</td>
        </tr>
    
        <tr>
            <td>clientId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If the client id is not specified, new one will be generated. This value (whether specified or generated) is included in the response.</td>
        </tr>
    
        <tr>
            <td>disconnectedNodeAcknowledged</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The controller service id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ControllerServiceEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /controller-services/{uuid}</div>
            
        
            
            <div>Write - Parent Process Group if scoped by Process Group - /process-groups/{uuid}</div>
            
        
            
            <div>Write - Controller if scoped by Controller - /controller</div>
            
        
            
            <div>Read - any referenced Controller Services - /controller-services/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/controller-services/{id}/config/analysis</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Performs analysis of the component&#x27;s configuration, providing information about which attributes are referenced.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The controller service id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ConfigurationAnalysisEntity</a> 
                </td>
            
            <td>The configuration analysis request.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ConfigurationAnalysisEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /controller-services/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/controller-services/{id}/config/verification-requests</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Performs verification of the Controller Service&#x27;s configuration</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        This will initiate the process of verifying a given Controller Service configuration. This may be a long-running task. As a result, this endpoint will immediately return a ControllerServiceConfigVerificationRequestEntity, and the process of performing the verification will occur asynchronously in the background. The client may then periodically poll the status of the request by issuing a GET request to /controller-services/{serviceId}/verification-requests/{requestId}. Once the request is completed, the client is expected to issue a DELETE request to /controller-services/{serviceId}/verification-requests/{requestId}.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The controller service id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">VerifyConfigRequestEntity</a> 
                </td>
            
            <td>The controller service configuration verification request.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">VerifyConfigRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /controller-services/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/controller-services/{id}/config/verification-requests/{requestId}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Returns the Verification Request with the given ID</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Returns the Verification Request with the given ID. Once an Verification Request has been created, that request can subsequently be retrieved via this endpoint, and the request that is fetched will contain the updated state, such as percent complete, the current state of the request, and any failures. 
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Controller Service</td>
        </tr>
    
        <tr>
            <td>requestId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Verification Request</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">VerifyConfigRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Only the user that submitted the request can get it</div>
            
        
    </div>
</div>
        </div>
    
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes the Verification Request with the given ID</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Deletes the Verification Request with the given ID. After a request is created, it is expected that the client will properly clean up the request by DELETE&#x27;ing it, once the Verification process has completed. If the request is deleted before the request completes, then the Verification request will finish the step that it is currently performing and then will cancel any subsequent steps.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Controller Service</td>
        </tr>
    
        <tr>
            <td>requestId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Verification Request</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">VerifyConfigRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Only the user that submitted the request can remove it</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/controller-services/{id}/descriptors</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets a controller service property descriptor</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The controller service id.</td>
        </tr>
    
        <tr>
            <td>propertyName</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The property name to return the descriptor for.</td>
        </tr>
    
        <tr>
            <td>sensitive</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Property Descriptor requested sensitive status</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">PropertyDescriptorEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /controller-services/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/controller-services/{id}/references</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets a controller service</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The controller service id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ControllerServiceReferencingComponentsEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /controller-services/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Updates a controller services references</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The controller service id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">UpdateControllerServiceReferenceRequestEntity</a> 
                </td>
            
            <td>The controller service request update request.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ControllerServiceReferencingComponentsEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /{component-type}/{uuid} or /operate/{component-type}/{uuid} - For each referencing component specified</div>
            
        
    </div>
</div>
        </div>
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/controller-services/{id}/run-status</span>
    
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Updates run status of a controller service</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The controller service id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ControllerServiceRunStatusEntity</a> 
                </td>
            
            <td>The controller service run status.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ControllerServiceEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /controller-services/{uuid} or /operation/controller-services/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/controller-services/{id}/state</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets the state for a controller service</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The controller service id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ComponentStateEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /controller-services/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/controller-services/{id}/state/clear-requests</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Clears the state for a controller service</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The controller service id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ComponentStateEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /controller-services/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/controller/bulletin</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Creates a new bulletin</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">BulletinEntity</a> 
                </td>
            
            <td>The reporting task configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">BulletinEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /controller</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/controller/cluster</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets the contents of the cluster</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Returns the contents of the cluster including all nodes and their status.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ClusterEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /controller</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/controller/cluster/nodes/{id}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets a node in the cluster</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The node id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">NodeEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /controller</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Updates a node in the cluster</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The node id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">NodeEntity</a> 
                </td>
            
            <td>The node configuration. The only configuration that will be honored at this endpoint is the status.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">NodeEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /controller</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Removes a node from the cluster</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The node id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">NodeEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /controller</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/controller/config</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Retrieves the configuration for this NiFi Controller</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ControllerConfigurationEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /controller</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Retrieves the configuration for this NiFi</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ControllerConfigurationEntity</a> 
                </td>
            
            <td>The controller configuration.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ControllerConfigurationEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /controller</div>
            
        
    </div>
</div>
        </div>
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/controller/controller-services</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Creates a new controller service</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ControllerServiceEntity</a> 
                </td>
            
            <td>The controller service configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ControllerServiceEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /controller</div>
            
        
            
            <div>Read - any referenced Controller Services - /controller-services/{uuid}</div>
            
        
            
            <div>Write - if the Controller Service is restricted - /restricted-components</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/controller/history</span>
    
    
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Purges history</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>endDate</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>Purge actions before this date/time.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">HistoryEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /controller</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/controller/parameter-providers</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Creates a new parameter provider</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ParameterProviderEntity</a> 
                </td>
            
            <td>The parameter provider configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ParameterProviderEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /controller</div>
            
        
            
            <div>Read - any referenced Controller Services - /controller-services/{uuid}</div>
            
        
            
            <div>Write - if the Parameter Provider is restricted - /restricted-components</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/controller/registry-clients</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Creates a new flow registry client</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">FlowRegistryClientEntity</a> 
                </td>
            
            <td>The flow registry client configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">FlowRegistryClientEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /controller</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets the listing of available flow registry clients</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">FlowRegistryClientsEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/controller/registry-clients/{id}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets a flow registry client</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The flow registry client id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">FlowRegistryClientEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /controller</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Updates a flow registry client</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The flow registry client id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">FlowRegistryClientEntity</a> 
                </td>
            
            <td>The flow registry client configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">FlowRegistryClientEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /controller</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes a flow registry client</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>version</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The revision is used to verify the client is working with the latest version of the flow.</td>
        </tr>
    
        <tr>
            <td>clientId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If the client id is not specified, new one will be generated. This value (whether specified or generated) is included in the response.</td>
        </tr>
    
        <tr>
            <td>disconnectedNodeAcknowledged</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The flow registry client id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">FlowRegistryClientEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /controller</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/controller/registry-clients/{id}/descriptors</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets a flow registry client property descriptor</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The flow registry client id.</td>
        </tr>
    
        <tr>
            <td>propertyName</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The property name.</td>
        </tr>
    
        <tr>
            <td>sensitive</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Property Descriptor requested sensitive status</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">PropertyDescriptorEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /controller/registry-clients/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/controller/registry-types</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Retrieves the types of flow  that this NiFi supports</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">FlowRegistryClientTypesEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/controller/reporting-tasks</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Creates a new reporting task</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ReportingTaskEntity</a> 
                </td>
            
            <td>The reporting task configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ReportingTaskEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /controller</div>
            
        
            
            <div>Read - any referenced Controller Services - /controller-services/{uuid}</div>
            
        
            
            <div>Write - if the Reporting Task is restricted - /restricted-components</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/controller/status/history</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets status history for the node</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ComponentHistoryEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /controller</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/counters</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets the current counters for this NiFi</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>nodewise</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Whether or not to include the breakdown per node. Optional, defaults to false</td>
        </tr>
    
        <tr>
            <td>clusterNodeId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The id of the node where to get the status.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">CountersEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /counters</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/counters/{id}</span>
    
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Updates the specified counter. This will reset the counter value to 0</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The id of the counter.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">CounterEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /counters</div>
            
        
    </div>
</div>
        </div>
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/data-transfer/input-ports/{portId}/transactions/{transactionId}</span>
    
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Extend transaction TTL</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>portId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td></td>
        </tr>
    
        <tr>
            <td>transactionId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td></td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">TransactionResultEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /data-transfer/input-ports/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Commit or cancel the specified transaction</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/octet-stream</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>responseCode</td>
            <td>query</td>
            
                
                    
                        <td>integer (int32)</td>
                    
                
            
            <td>The response code. Available values are BAD_CHECKSUM(19), CONFIRM_TRANSACTION(12) or CANCEL_TRANSACTION(15).</td>
        </tr>
    
        <tr>
            <td>portId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The input port id.</td>
        </tr>
    
        <tr>
            <td>transactionId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The transaction id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">TransactionResultEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
            <tr>
                <td>503</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi instance is not ready for serving request, or temporarily overloaded. Retrying the same request later may be successful</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /data-transfer/input-ports/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/data-transfer/input-ports/{portId}/transactions/{transactionId}/flow-files</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Transfer flow files to the input port</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/octet-stream</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>portId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The input port id.</td>
        </tr>
    
        <tr>
            <td>transactionId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td></td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">text/plain</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
            <tr>
                <td>503</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi instance is not ready for serving request, or temporarily overloaded. Retrying the same request later may be successful</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /data-transfer/input-ports/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/data-transfer/output-ports/{portId}/transactions/{transactionId}</span>
    
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Extend transaction TTL</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>portId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td></td>
        </tr>
    
        <tr>
            <td>transactionId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td></td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">TransactionResultEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
            <tr>
                <td>503</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi instance is not ready for serving request, or temporarily overloaded. Retrying the same request later may be successful</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /data-transfer/output-ports/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Commit or cancel the specified transaction</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/octet-stream</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>responseCode</td>
            <td>query</td>
            
                
                    
                        <td>integer (int32)</td>
                    
                
            
            <td>The response code. Available values are CONFIRM_TRANSACTION(12) or CANCEL_TRANSACTION(15).</td>
        </tr>
    
        <tr>
            <td>checksum</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>A checksum calculated at client side using CRC32 to check flow file content integrity. It must match with the value calculated at server side.</td>
        </tr>
    
        <tr>
            <td>portId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The output port id.</td>
        </tr>
    
        <tr>
            <td>transactionId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The transaction id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">TransactionResultEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
            <tr>
                <td>503</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi instance is not ready for serving request, or temporarily overloaded. Retrying the same request later may be successful</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /data-transfer/output-ports/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/data-transfer/output-ports/{portId}/transactions/{transactionId}/flow-files</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Transfer flow files from the output port</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>portId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The output port id.</td>
        </tr>
    
        <tr>
            <td>transactionId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td></td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/octet-stream</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">StreamingOutput</a>
                    
                </td>
                <td>There is no flow file to return.</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
            <tr>
                <td>503</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi instance is not ready for serving request, or temporarily overloaded. Retrying the same request later may be successful</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /data-transfer/output-ports/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/data-transfer/{portType}/{portId}/transactions</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Create a transaction to the specified output port or input port</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>portType</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The port type.</td>
        </tr>
    
        <tr>
            <td>portId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td></td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">TransactionResultEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
            <tr>
                <td>503</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi instance is not ready for serving request, or temporarily overloaded. Retrying the same request later may be successful</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /data-transfer/{component-type}/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/about</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Retrieves details about this NiFi to put in the About dialog</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">AboutEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/banners</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Retrieves the banners for this NiFi</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">BannerEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/bulletin-board</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets current bulletins</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>after</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>Includes bulletins with an id after this value.</td>
        </tr>
    
        <tr>
            <td>sourceName</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>Includes bulletins originating from this sources whose name match this regular expression.</td>
        </tr>
    
        <tr>
            <td>message</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>Includes bulletins whose message that match this regular expression.</td>
        </tr>
    
        <tr>
            <td>sourceId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>Includes bulletins originating from this sources whose id match this regular expression.</td>
        </tr>
    
        <tr>
            <td>groupId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>Includes bulletins originating from this sources whose group id match this regular expression.</td>
        </tr>
    
        <tr>
            <td>limit</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The number of bulletins to limit the response to.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">BulletinBoardEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
            
            <div>Read - /{component-type}/{uuid} - For component specific bulletins</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/client-id</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Generates a client id.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">text/plain</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/cluster/search-results</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Searches the cluster for a node with the specified address</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>q</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>Node address to search for.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ClusterSearchResultsEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/cluster/summary</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">The cluster summary for this NiFi</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ClusteSummaryEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/config</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Retrieves the configuration for this NiFi flow</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">FlowConfigurationEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/connections/{id}/statistics</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets statistics for a connection</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>nodewise</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Whether or not to include the breakdown per node. Optional, defaults to false</td>
        </tr>
    
        <tr>
            <td>clusterNodeId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The id of the node where to get the statistics.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The connection id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ConnectionStatisticsEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/connections/{id}/status</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets status for a connection</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>nodewise</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Whether or not to include the breakdown per node. Optional, defaults to false</td>
        </tr>
    
        <tr>
            <td>clusterNodeId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The id of the node where to get the status.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The connection id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ConnectionStatusEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/connections/{id}/status/history</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets the status history for a connection</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The connection id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">StatusHistoryEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/controller-service-types</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Retrieves the types of controller services that this NiFi supports</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>serviceType</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If specified, will only return controller services that are compatible with this type of service.</td>
        </tr>
    
        <tr>
            <td>serviceBundleGroup</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If serviceType specified, is the bundle group of the serviceType.</td>
        </tr>
    
        <tr>
            <td>serviceBundleArtifact</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If serviceType specified, is the bundle artifact of the serviceType.</td>
        </tr>
    
        <tr>
            <td>serviceBundleVersion</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If serviceType specified, is the bundle version of the serviceType.</td>
        </tr>
    
        <tr>
            <td>bundleGroupFilter</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If specified, will only return types that are a member of this bundle group.</td>
        </tr>
    
        <tr>
            <td>bundleArtifactFilter</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If specified, will only return types that are a member of this bundle artifact.</td>
        </tr>
    
        <tr>
            <td>typeFilter</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If specified, will only return types whose fully qualified classname matches.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ControllerServiceTypesEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/controller/bulletins</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Retrieves Controller level bulletins</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ControllerBulletinsEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
            
            <div>Read - /controller - For controller bulletins</div>
            
        
            
            <div>Read - /controller-services/{uuid} - For controller service bulletins</div>
            
        
            
            <div>Read - /reporting-tasks/{uuid} - For reporting task bulletins</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/controller/controller-services</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets controller services for reporting tasks</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        If the uiOnly query parameter is provided with a value of true, the returned entity may only contain fields that are necessary for rendering the NiFi User Interface. As such, the selected fields may change at any time, even during incremental releases, without warning. As a result, this parameter should not be provided by any client other than the UI.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>uiOnly</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td></td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ControllerServicesEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/current-user</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Retrieves the user identity of the user making the request</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">CurrentUserEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/history</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets configuration history</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>offset</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The offset into the result set.</td>
        </tr>
    
        <tr>
            <td>count</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The number of actions to return.</td>
        </tr>
    
        <tr>
            <td>sortColumn</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The field to sort on.</td>
        </tr>
    
        <tr>
            <td>sortOrder</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The direction to sort.</td>
        </tr>
    
        <tr>
            <td>startDate</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>Include actions after this date.</td>
        </tr>
    
        <tr>
            <td>endDate</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>Include actions before this date.</td>
        </tr>
    
        <tr>
            <td>userIdentity</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>Include actions performed by this user.</td>
        </tr>
    
        <tr>
            <td>sourceId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>Include actions on this component.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">HistoryEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/history/components/{componentId}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets configuration history for a component</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>componentId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The component id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ComponentHistoryEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
            
            <div>Read underlying component - /{component-type}/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/history/{id}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets an action</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The action id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ActionEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/input-ports/{id}/status</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets status for an input port</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>nodewise</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Whether or not to include the breakdown per node. Optional, defaults to false</td>
        </tr>
    
        <tr>
            <td>clusterNodeId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The id of the node where to get the status.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The input port id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">PortStatusEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/metrics/{producer}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets all metrics for the flow from a particular node</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>producer</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The producer for flow file metrics. Each producer may have its own output format.</td>
        </tr>
    
        <tr>
            <td>includedRegistries</td>
            <td>query</td>
            
                
                        <td>Array[string] (multi)</td>
                
            
            <td>Set of included metrics registries</td>
        </tr>
    
        <tr>
            <td>sampleName</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>Regular Expression Pattern to be applied against the sample name field</td>
        </tr>
    
        <tr>
            <td>sampleLabelValue</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>Regular Expression Pattern to be applied against the sample label value field</td>
        </tr>
    
        <tr>
            <td>rootFieldName</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>Name of the first field of JSON object. Applicable for JSON producer only.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">StreamingOutput</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/output-ports/{id}/status</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets status for an output port</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>nodewise</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Whether or not to include the breakdown per node. Optional, defaults to false</td>
        </tr>
    
        <tr>
            <td>clusterNodeId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The id of the node where to get the status.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The output port id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">PortStatusEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/parameter-contexts</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets all Parameter Contexts</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ParameterContextsEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /parameter-contexts/{id} for each Parameter Context</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/parameter-provider-types</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Retrieves the types of parameter providers that this NiFi supports</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>bundleGroupFilter</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If specified, will only return types that are a member of this bundle group.</td>
        </tr>
    
        <tr>
            <td>bundleArtifactFilter</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If specified, will only return types that are a member of this bundle artifact.</td>
        </tr>
    
        <tr>
            <td>type</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If specified, will only return types whose fully qualified classname matches.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ParameterProviderTypesEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/parameter-providers</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets all parameter providers</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ParameterProvidersEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/prioritizers</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Retrieves the types of prioritizers that this NiFi supports</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">PrioritizerTypesEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/process-groups/{id}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets a process group</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        If the uiOnly query parameter is provided with a value of true, the returned entity may only contain fields that are necessary for rendering the NiFi User Interface. As such, the selected fields may change at any time, even during incremental releases, without warning. As a result, this parameter should not be provided by any client other than the UI.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td>uiOnly</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td></td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProcessGroupFlowEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Schedule or unschedule components in the specified Process Group.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ScheduleComponentsEntity</a> 
                </td>
            
            <td>The request to schedule or unschedule. If the comopnents in the request are not specified, all authorized components will be considered.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ScheduleComponentsEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
            
            <div>Write - /{component-type}/{uuid} or /operation/{component-type}/{uuid} - For every component being scheduled/unscheduled</div>
            
        
    </div>
</div>
        </div>
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/process-groups/{id}/controller-services</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets all controller services</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        If the uiOnly query parameter is provided with a value of true, the returned entity may only contain fields that are necessary for rendering the NiFi User Interface. As such, the selected fields may change at any time, even during incremental releases, without warning. As a result, this parameter should not be provided by any client other than the UI.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td>includeAncestorGroups</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Whether or not to include parent/ancestory process groups</td>
        </tr>
    
        <tr>
            <td>includeDescendantGroups</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Whether or not to include descendant process groups</td>
        </tr>
    
        <tr>
            <td>uiOnly</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td></td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ControllerServicesEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Enable or disable Controller Services in the specified Process Group.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ActivateControllerServicesEntity</a> 
                </td>
            
            <td>The request to schedule or unschedule. If the comopnents in the request are not specified, all authorized components will be considered.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ActivateControllerServicesEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
            
            <div>Write - /{component-type}/{uuid} or /operation/{component-type}/{uuid} - For every service being enabled/disabled</div>
            
        
    </div>
</div>
        </div>
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/process-groups/{id}/status</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets the status for a process group</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        The status for a process group includes status for all descendent components. When invoked on the root group with recursive set to true, it will return the current status of every component in the flow.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>recursive</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Whether all descendant groups and the status of their content will be included. Optional, defaults to false</td>
        </tr>
    
        <tr>
            <td>nodewise</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Whether or not to include the breakdown per node. Optional, defaults to false</td>
        </tr>
    
        <tr>
            <td>clusterNodeId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The id of the node where to get the status.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProcessGroupStatusEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/process-groups/{id}/status/history</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets status history for a remote process group</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">StatusHistoryEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/processor-types</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Retrieves the types of processors that this NiFi supports</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>bundleGroupFilter</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If specified, will only return types that are a member of this bundle group.</td>
        </tr>
    
        <tr>
            <td>bundleArtifactFilter</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If specified, will only return types that are a member of this bundle artifact.</td>
        </tr>
    
        <tr>
            <td>type</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If specified, will only return types whose fully qualified classname matches.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProcessorTypesEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/processors/{id}/status</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets status for a processor</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>nodewise</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Whether or not to include the breakdown per node. Optional, defaults to false</td>
        </tr>
    
        <tr>
            <td>clusterNodeId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The id of the node where to get the status.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The processor id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProcessorStatusEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/processors/{id}/status/history</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets status history for a processor</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The processor id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">StatusHistoryEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/registries</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets the listing of available flow registry clients</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">FlowRegistryClientsEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/registries/{id}/buckets</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets the buckets from the specified registry for the current user</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The registry id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">FlowRegistryBucketsEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/registries/{registry-id}/buckets/{bucket-id}/flows</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets the flows from the specified registry and bucket for the current user</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>registry-id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The registry client id.</td>
        </tr>
    
        <tr>
            <td>bucket-id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The bucket id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">VersionedFlowsEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/registries/{registry-id}/buckets/{bucket-id}/flows/{flow-id}/details</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets the details of a flow from the specified registry and bucket for the specified flow for the current user</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>registry-id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The registry client id.</td>
        </tr>
    
        <tr>
            <td>bucket-id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The bucket id.</td>
        </tr>
    
        <tr>
            <td>flow-id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The flow id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">VersionedFlowEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/registries/{registry-id}/buckets/{bucket-id}/flows/{flow-id}/versions</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets the flow versions from the specified registry and bucket for the specified flow for the current user</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>registry-id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The registry client id.</td>
        </tr>
    
        <tr>
            <td>bucket-id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The bucket id.</td>
        </tr>
    
        <tr>
            <td>flow-id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The flow id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">VersionedFlowSnapshotMetadataSetEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/remote-process-groups/{id}/status</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets status for a remote process group</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>nodewise</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Whether or not to include the breakdown per node. Optional, defaults to false</td>
        </tr>
    
        <tr>
            <td>clusterNodeId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The id of the node where to get the status.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The remote process group id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">RemoteProcessGroupStatusEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/remote-process-groups/{id}/status/history</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets the status history</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The remote process group id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">StatusHistoryEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/reporting-task-types</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Retrieves the types of reporting tasks that this NiFi supports</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>bundleGroupFilter</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If specified, will only return types that are a member of this bundle group.</td>
        </tr>
    
        <tr>
            <td>bundleArtifactFilter</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If specified, will only return types that are a member of this bundle artifact.</td>
        </tr>
    
        <tr>
            <td>type</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If specified, will only return types whose fully qualified classname matches.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ReportingTaskTypesEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/reporting-tasks</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets all reporting tasks</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ReportingTasksEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/runtime-manifest</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Retrieves the runtime manifest for this NiFi instance.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">RuntimeManifestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/search-results</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Performs a search against this NiFi using the specified search term</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Only search results from authorized components will be returned.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>q</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td></td>
        </tr>
    
        <tr>
            <td>a</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td></td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">SearchResultsEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/status</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets the current status of this NiFi</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ControllerStatusEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flow/templates</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets all templates</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">TemplatesEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /flow</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flowfile-queues/{id}/drop-requests</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Creates a request to drop the contents of the queue in this connection.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The connection id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">DropRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>202</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request has been accepted. A HTTP response header will contain the URI where the response can be polled.</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write Source Data - /data/{component-type}/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flowfile-queues/{id}/drop-requests/{drop-request-id}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets the current status of a drop request for the specified connection.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The connection id.</td>
        </tr>
    
        <tr>
            <td>drop-request-id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The drop request id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">DropRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write Source Data - /data/{component-type}/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Cancels and/or removes a request to drop the contents of this connection.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The connection id.</td>
        </tr>
    
        <tr>
            <td>drop-request-id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The drop request id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">DropRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write Source Data - /data/{component-type}/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flowfile-queues/{id}/flowfiles/{flowfile-uuid}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets a FlowFile from a Connection.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The connection id.</td>
        </tr>
    
        <tr>
            <td>flowfile-uuid</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The flowfile uuid.</td>
        </tr>
    
        <tr>
            <td>clusterNodeId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The id of the node where the content exists if clustered.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">FlowFileEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read Source Data - /data/{component-type}/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flowfile-queues/{id}/flowfiles/{flowfile-uuid}/content</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets the content for a FlowFile in a Connection.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>clientId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If the client id is not specified, new one will be generated. This value (whether specified or generated) is included in the response.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The connection id.</td>
        </tr>
    
        <tr>
            <td>flowfile-uuid</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The flowfile uuid.</td>
        </tr>
    
        <tr>
            <td>clusterNodeId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The id of the node where the content exists if clustered.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">StreamingOutput</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read Source Data - /data/{component-type}/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flowfile-queues/{id}/listing-requests</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Lists the contents of the queue in this connection.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The connection id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ListingRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>202</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request has been accepted. A HTTP response header will contain the URI where the response can be polled.</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read Source Data - /data/{component-type}/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/flowfile-queues/{id}/listing-requests/{listing-request-id}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets the current status of a listing request for the specified connection.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The connection id.</td>
        </tr>
    
        <tr>
            <td>listing-request-id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The listing request id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ListingRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read Source Data - /data/{component-type}/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Cancels and/or removes a request to list the contents of this connection.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The connection id.</td>
        </tr>
    
        <tr>
            <td>listing-request-id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The listing request id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ListingRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read Source Data - /data/{component-type}/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/funnels/{id}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets a funnel</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The funnel id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">FunnelEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /funnels/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Updates a funnel</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The funnel id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">FunnelEntity</a> 
                </td>
            
            <td>The funnel configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">FunnelEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /funnels/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes a funnel</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>version</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The revision is used to verify the client is working with the latest version of the flow.</td>
        </tr>
    
        <tr>
            <td>clientId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If the client id is not specified, new one will be generated. This value (whether specified or generated) is included in the response.</td>
        </tr>
    
        <tr>
            <td>disconnectedNodeAcknowledged</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The funnel id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">FunnelEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /funnels/{uuid}</div>
            
        
            
            <div>Write - Parent Process Group - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/input-ports/{id}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets an input port</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The input port id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">PortEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /input-ports/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Updates an input port</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The input port id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">PortEntity</a> 
                </td>
            
            <td>The input port configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">PortEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /input-ports/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes an input port</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>version</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The revision is used to verify the client is working with the latest version of the flow.</td>
        </tr>
    
        <tr>
            <td>clientId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If the client id is not specified, new one will be generated. This value (whether specified or generated) is included in the response.</td>
        </tr>
    
        <tr>
            <td>disconnectedNodeAcknowledged</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The input port id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">PortEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /input-ports/{uuid}</div>
            
        
            
            <div>Write - Parent Process Group - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/input-ports/{id}/run-status</span>
    
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Updates run status of an input-port</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The port id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">PortRunStatusEntity</a> 
                </td>
            
            <td>The port run status.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProcessorEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /input-ports/{uuid} or /operation/input-ports/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/labels/{id}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets a label</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The label id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">LabelEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /labels/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Updates a label</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The label id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">LabelEntity</a> 
                </td>
            
            <td>The label configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">LabelEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /labels/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes a label</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>version</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The revision is used to verify the client is working with the latest version of the flow.</td>
        </tr>
    
        <tr>
            <td>clientId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If the client id is not specified, new one will be generated. This value (whether specified or generated) is included in the response.</td>
        </tr>
    
        <tr>
            <td>disconnectedNodeAcknowledged</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The label id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">LabelEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /labels/{uuid}</div>
            
        
            
            <div>Write - Parent Process Group - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/output-ports/{id}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets an output port</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The output port id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">PortEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /output-ports/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Updates an output port</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The output port id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">PortEntity</a> 
                </td>
            
            <td>The output port configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">PortEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /output-ports/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes an output port</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>version</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The revision is used to verify the client is working with the latest version of the flow.</td>
        </tr>
    
        <tr>
            <td>clientId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If the client id is not specified, new one will be generated. This value (whether specified or generated) is included in the response.</td>
        </tr>
    
        <tr>
            <td>disconnectedNodeAcknowledged</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The output port id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">PortEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /output-ports/{uuid}</div>
            
        
            
            <div>Write - Parent Process Group - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/output-ports/{id}/run-status</span>
    
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Updates run status of an output-port</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The port id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">PortRunStatusEntity</a> 
                </td>
            
            <td>The port run status.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProcessorEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /output-ports/{uuid} or /operation/output-ports/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/parameter-contexts</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Create a Parameter Context</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ParameterContextEntity</a> 
                </td>
            
            <td>The Parameter Context.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ParameterContextEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /parameter-contexts</div>
            
        
            
            <div>Read - for every inherited parameter context</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/parameter-contexts/{contextId}/update-requests</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Initiate the Update Request of a Parameter Context</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        This will initiate the process of updating a Parameter Context. Changing the value of a Parameter may require that one or more components be stopped and restarted, so this action may take significantly more time than many other REST API actions. As a result, this endpoint will immediately return a ParameterContextUpdateRequestEntity, and the process of updating the necessary components will occur asynchronously in the background. The client may then periodically poll the status of the request by issuing a GET request to /parameter-contexts/update-requests/{requestId}. Once the request is completed, the client is expected to issue a DELETE request to /parameter-contexts/update-requests/{requestId}.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>contextId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td></td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ParameterContextEntity</a> 
                </td>
            
            <td>The updated version of the parameter context.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ParameterContextUpdateRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /parameter-contexts/{parameterContextId}</div>
            
        
            
            <div>Write - /parameter-contexts/{parameterContextId}</div>
            
        
            
            <div>Read - for every component that is affected by the update</div>
            
        
            
            <div>Write - for every component that is affected by the update</div>
            
        
            
            <div>Read - for every currently inherited parameter context</div>
            
        
            
            <div>Read - for any new inherited parameter context</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/parameter-contexts/{contextId}/update-requests/{requestId}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Returns the Update Request with the given ID</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Returns the Update Request with the given ID. Once an Update Request has been created by performing a POST to /nifi-api/parameter-contexts, that request can subsequently be retrieved via this endpoint, and the request that is fetched will contain the updated state, such as percent complete, the current state of the request, and any failures. 
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>contextId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Parameter Context</td>
        </tr>
    
        <tr>
            <td>requestId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Update Request</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ParameterContextUpdateRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Only the user that submitted the request can get it</div>
            
        
    </div>
</div>
        </div>
    
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes the Update Request with the given ID</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Deletes the Update Request with the given ID. After a request is created via a POST to /nifi-api/parameter-contexts/update-requests, it is expected that the client will properly clean up the request by DELETE&#x27;ing it, once the Update process has completed. If the request is deleted before the request completes, then the Update request will finish the step that it is currently performing and then will cancel any subsequent steps.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>disconnectedNodeAcknowledged</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.</td>
        </tr>
    
        <tr>
            <td>contextId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the ParameterContext</td>
        </tr>
    
        <tr>
            <td>requestId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Update Request</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ParameterContextUpdateRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Only the user that submitted the request can remove it</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/parameter-contexts/{contextId}/validation-requests</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Initiate a Validation Request to determine how the validity of components will change if a Parameter Context were to be updated</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        This will initiate the process of validating all components whose Process Group is bound to the specified Parameter Context. Performing validation against an arbitrary number of components may be expect and take significantly more time than many other REST API actions. As a result, this endpoint will immediately return a ParameterContextValidationRequestEntity, and the process of validating the necessary components will occur asynchronously in the background. The client may then periodically poll the status of the request by issuing a GET request to /parameter-contexts/validation-requests/{requestId}. Once the request is completed, the client is expected to issue a DELETE request to /parameter-contexts/validation-requests/{requestId}.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>contextId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td></td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ParameterContextValidationRequestEntity</a> 
                </td>
            
            <td>The validation request</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ParameterContextValidationRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /parameter-contexts/{parameterContextId}</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/parameter-contexts/{contextId}/validation-requests/{id}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Returns the Validation Request with the given ID</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Returns the Validation Request with the given ID. Once a Validation Request has been created by performing a POST to /nifi-api/validation-contexts, that request can subsequently be retrieved via this endpoint, and the request that is fetched will contain the updated state, such as percent complete, the current state of the request, and any failures. 
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>contextId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Parameter Context</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Validation Request</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ParameterContextValidationRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Only the user that submitted the request can get it</div>
            
        
    </div>
</div>
        </div>
    
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes the Validation Request with the given ID</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Deletes the Validation Request with the given ID. After a request is created via a POST to /nifi-api/validation-contexts, it is expected that the client will properly clean up the request by DELETE&#x27;ing it, once the validation process has completed. If the request is deleted before the request completes, then the Validation request will finish the step that it is currently performing and then will cancel any subsequent steps.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>disconnectedNodeAcknowledged</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.</td>
        </tr>
    
        <tr>
            <td>contextId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Parameter Context</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Update Request</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ParameterContextValidationRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Only the user that submitted the request can remove it</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/parameter-contexts/{id}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Returns the Parameter Context with the given ID</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Returns the Parameter Context with the given ID.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Parameter Context</td>
        </tr>
    
        <tr>
            <td>includeInheritedParameters</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Whether or not to include inherited parameters from other parameter contexts, and therefore also overridden values.  If true, the result will be the &#x27;effective&#x27; parameter context.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ParameterContextEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /parameter-contexts/{id}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Modifies a Parameter Context</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        This endpoint will update a Parameter Context to match the provided entity. However, this request will fail if any component is running and is referencing a Parameter in the Parameter Context. Generally, this endpoint is not called directly. Instead, an update request should be submitted by making a POST to the /parameter-contexts/update-requests endpoint. That endpoint will, in turn, call this endpoint.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td></td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ParameterContextEntity</a> 
                </td>
            
            <td>The updated Parameter Context</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ParameterContextEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /parameter-contexts/{id}</div>
            
        
            
            <div>Write - /parameter-contexts/{id}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes the Parameter Context with the given ID</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Deletes the Parameter Context with the given ID.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>version</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The version is used to verify the client is working with the latest version of the flow.</td>
        </tr>
    
        <tr>
            <td>clientId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If the client id is not specified, a new one will be generated. This value (whether specified or generated) is included in the response.</td>
        </tr>
    
        <tr>
            <td>disconnectedNodeAcknowledged</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The Parameter Context ID.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ParameterContextEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /parameter-contexts/{uuid}</div>
            
        
            
            <div>Write - /parameter-contexts/{uuid}</div>
            
        
            
            <div>Read - /process-groups/{uuid}, for any Process Group that is currently bound to the Parameter Context</div>
            
        
            
            <div>Write - /process-groups/{uuid}, for any Process Group that is currently bound to the Parameter Context</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/parameter-providers/{id}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets a parameter provider</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The parameter provider id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ParameterProviderEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /parameter-providers/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Updates a parameter provider</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The parameter provider id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ParameterProviderEntity</a> 
                </td>
            
            <td>The parameter provider configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ParameterProviderEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /parameter-providers/{uuid}</div>
            
        
            
            <div>Read - any referenced Controller Services if this request changes the reference - /controller-services/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes a parameter provider</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>version</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The revision is used to verify the client is working with the latest version of the flow.</td>
        </tr>
    
        <tr>
            <td>clientId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If the client id is not specified, new one will be generated. This value (whether specified or generated) is included in the response.</td>
        </tr>
    
        <tr>
            <td>disconnectedNodeAcknowledged</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The parameter provider id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ParameterProviderEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /parameter-providers/{uuid}</div>
            
        
            
            <div>Write - /controller</div>
            
        
            
            <div>Read - any referenced Controller Services - /controller-services/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/parameter-providers/{id}/config/analysis</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Performs analysis of the component&#x27;s configuration, providing information about which attributes are referenced.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The parameter provider id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ConfigurationAnalysisEntity</a> 
                </td>
            
            <td>The configuration analysis request.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ConfigurationAnalysisEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /parameter-providers/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/parameter-providers/{id}/config/verification-requests</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Performs verification of the Parameter Provider&#x27;s configuration</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        This will initiate the process of verifying a given Parameter Provider configuration. This may be a long-running task. As a result, this endpoint will immediately return a ParameterProviderConfigVerificationRequestEntity, and the process of performing the verification will occur asynchronously in the background. The client may then periodically poll the status of the request by issuing a GET request to /parameter-providers/{serviceId}/verification-requests/{requestId}. Once the request is completed, the client is expected to issue a DELETE request to /parameter-providers/{providerId}/verification-requests/{requestId}.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The parameter provider id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">VerifyConfigRequestEntity</a> 
                </td>
            
            <td>The parameter provider configuration verification request.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">VerifyConfigRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /parameter-providers/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/parameter-providers/{id}/config/verification-requests/{requestId}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Returns the Verification Request with the given ID</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Returns the Verification Request with the given ID. Once an Verification Request has been created, that request can subsequently be retrieved via this endpoint, and the request that is fetched will contain the updated state, such as percent complete, the current state of the request, and any failures. 
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Parameter Provider</td>
        </tr>
    
        <tr>
            <td>requestId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Verification Request</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">VerifyConfigRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Only the user that submitted the request can get it</div>
            
        
    </div>
</div>
        </div>
    
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes the Verification Request with the given ID</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Deletes the Verification Request with the given ID. After a request is created, it is expected that the client will properly clean up the request by DELETE&#x27;ing it, once the Verification process has completed. If the request is deleted before the request completes, then the Verification request will finish the step that it is currently performing and then will cancel any subsequent steps.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Parameter Provider</td>
        </tr>
    
        <tr>
            <td>requestId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Verification Request</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">VerifyConfigRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Only the user that submitted the request can remove it</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/parameter-providers/{id}/descriptors</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets a parameter provider property descriptor</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The parameter provider id.</td>
        </tr>
    
        <tr>
            <td>propertyName</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The property name.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">PropertyDescriptorEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /parameter-providers/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/parameter-providers/{id}/parameters/fetch-requests</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Fetches and temporarily caches the parameters for a provider</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The parameter provider id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ParameterProviderParameterFetchEntity</a> 
                </td>
            
            <td>The parameter fetch request.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ParameterProviderEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /parameter-providers/{uuid} or  or /operation/parameter-providers/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/parameter-providers/{id}/references</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets all references to a parameter provider</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The parameter provider id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ParameterProviderReferencingComponentsEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /parameter-providers/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/parameter-providers/{id}/state</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets the state for a parameter provider</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The parameter provider id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ComponentStateEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /parameter-providers/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/parameter-providers/{id}/state/clear-requests</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Clears the state for a parameter provider</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The parameter provider id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ComponentStateEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /parameter-providers/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/parameter-providers/{providerId}/apply-parameters-requests</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Initiate a request to apply the fetched parameters of a Parameter Provider</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        This will initiate the process of applying fetched parameters to all referencing Parameter Contexts. Changing the value of a Parameter may require that one or more components be stopped and restarted, so this action may take significantly more time than many other REST API actions. As a result, this endpoint will immediately return a ParameterProviderApplyParametersRequestEntity, and the process of updating the necessary components will occur asynchronously in the background. The client may then periodically poll the status of the request by issuing a GET request to /parameter-providers/apply-parameters-requests/{requestId}. Once the request is completed, the client is expected to issue a DELETE request to /parameter-providers/apply-parameters-requests/{requestId}.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>providerId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td></td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ParameterProviderParameterApplicationEntity</a> 
                </td>
            
            <td>The apply parameters request.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ParameterProviderApplyParametersRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /parameter-providers/{parameterProviderId}</div>
            
        
            
            <div>Write - /parameter-providers/{parameterProviderId}</div>
            
        
            
            <div>Read - for every component that is affected by the update</div>
            
        
            
            <div>Write - for every component that is affected by the update</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/parameter-providers/{providerId}/apply-parameters-requests/{requestId}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Returns the Apply Parameters Request with the given ID</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Returns the Apply Parameters Request with the given ID. Once an Apply Parameters Request has been created by performing a POST to /nifi-api/parameter-providers, that request can subsequently be retrieved via this endpoint, and the request that is fetched will contain the state, such as percent complete, the current state of the request, and any failures. 
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>providerId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Parameter Provider</td>
        </tr>
    
        <tr>
            <td>requestId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Apply Parameters Request</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ParameterProviderApplyParametersRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Only the user that submitted the request can get it</div>
            
        
    </div>
</div>
        </div>
    
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes the Apply Parameters Request with the given ID</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Deletes the Apply Parameters Request with the given ID. After a request is created via a POST to /nifi-api/parameter-providers/apply-parameters-requests, it is expected that the client will properly clean up the request by DELETE&#x27;ing it, once the Apply process has completed. If the request is deleted before the request completes, then the Apply Parameters Request will finish the step that it is currently performing and then will cancel any subsequent steps.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>disconnectedNodeAcknowledged</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.</td>
        </tr>
    
        <tr>
            <td>providerId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Parameter Provider</td>
        </tr>
    
        <tr>
            <td>requestId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Apply Parameters Request</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ParameterProviderApplyParametersRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Only the user that submitted the request can remove it</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/policies</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Creates an access policy</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">AccessPolicyEntity</a> 
                </td>
            
            <td>The access policy configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">AccessPolicyEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /policies/{resource}</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/policies/{action}/{resource}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets an access policy for the specified action and resource</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Will return the effective policy if no component specific policy exists for the specified action and resource. Must have Read permissions to the policy with the desired action and resource. Permissions for the policy that is returned will be indicated in the response. This means the client could be authorized to get the policy for a given component but the effective policy may be inherited from an ancestor Process Group. If the client does not have permissions to that policy, the response will not include the policy and the permissions in the response will be marked accordingly. If the client does not have permissions to the policy of the desired action and resource a 403 response will be returned.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>action</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The request action.</td>
        </tr>
    
        <tr>
            <td>resource</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The resource of the policy.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">AccessPolicyEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /policies/{resource}</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/policies/{id}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets an access policy</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The access policy id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">AccessPolicyEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /policies/{resource}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Updates a access policy</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The access policy id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">AccessPolicyEntity</a> 
                </td>
            
            <td>The access policy configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">AccessPolicyEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /policies/{resource}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes an access policy</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>version</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The revision is used to verify the client is working with the latest version of the flow.</td>
        </tr>
    
        <tr>
            <td>clientId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If the client id is not specified, new one will be generated. This value (whether specified or generated) is included in the response.</td>
        </tr>
    
        <tr>
            <td>disconnectedNodeAcknowledged</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The access policy id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">AccessPolicyEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /policies/{resource}</div>
            
        
            
            <div>Write - Policy of the parent resource - /policies/{resource}</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/process-groups/replace-requests/{id}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Returns the Replace Request with the given ID</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Returns the Replace Request with the given ID. Once a Replace Request has been created by performing a POST to /process-groups/{id}/replace-requests, that request can subsequently be retrieved via this endpoint, and the request that is fetched will contain the updated state, such as percent complete, the current state of the request, and any failures. Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Replace Request</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProcessGroupReplaceRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Only the user that submitted the request can get it</div>
            
        
    </div>
</div>
        </div>
    
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes the Replace Request with the given ID</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Deletes the Replace Request with the given ID. After a request is created via a POST to /process-groups/{id}/replace-requests, it is expected that the client will properly clean up the request by DELETE&#x27;ing it, once the Replace process has completed. If the request is deleted before the request completes, then the Replace request will finish the step that it is currently performing and then will cancel any subsequent steps. Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>disconnectedNodeAcknowledged</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Update Request</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProcessGroupReplaceRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Only the user that submitted the request can remove it</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/process-groups/{groupId}/variable-registry/update-requests/{updateId}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets a process group&#x27;s variable registry</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>groupId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td>updateId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Variable Registry Update Request</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">VariableRegistryUpdateRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes an update request for a process group&#x27;s variable registry. If the request is not yet complete, it will automatically be cancelled.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>groupId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td>updateId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Variable Registry Update Request</td>
        </tr>
    
        <tr>
            <td>disconnectedNodeAcknowledged</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">VariableRegistryUpdateRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/process-groups/{id}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets a process group</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProcessGroupEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Updates a process group</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ProcessGroupEntity</a> 
                </td>
            
            <td>The process group configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProcessGroupEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes a process group</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>version</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The revision is used to verify the client is working with the latest version of the flow.</td>
        </tr>
    
        <tr>
            <td>clientId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If the client id is not specified, new one will be generated. This value (whether specified or generated) is included in the response.</td>
        </tr>
    
        <tr>
            <td>disconnectedNodeAcknowledged</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProcessGroupEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /process-groups/{uuid}</div>
            
        
            
            <div>Write - Parent Process Group - /process-groups/{uuid}</div>
            
        
            
            <div>Read - any referenced Controller Services by any encapsulated components - /controller-services/{uuid}</div>
            
        
            
            <div>Write - /{component-type}/{uuid} - For all encapsulated components</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/process-groups/{id}/connections</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Creates a connection</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ConnectionEntity</a> 
                </td>
            
            <td>The connection configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ConnectionEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /process-groups/{uuid}</div>
            
        
            
            <div>Write Source - /{component-type}/{uuid}</div>
            
        
            
            <div>Write Destination - /{component-type}/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets all connections</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ConnectionsEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/process-groups/{id}/controller-services</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Creates a new controller service</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ControllerServiceEntity</a> 
                </td>
            
            <td>The controller service configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ControllerServiceEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /process-groups/{uuid}</div>
            
        
            
            <div>Read - any referenced Controller Services - /controller-services/{uuid}</div>
            
        
            
            <div>Write - if the Controller Service is restricted - /restricted-components</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/process-groups/{id}/download</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets a process group for download</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td>includeReferencedServices</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>If referenced services from outside the target group should be included</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/process-groups/{id}/empty-all-connections-requests</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Creates a request to drop all flowfiles of all connection queues in this process group.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">DropRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>202</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request has been accepted. An HTTP response header will contain the URI where the status can be polled.</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /process-groups/{uuid} - For this and all encapsulated process groups</div>
            
        
            
            <div>Write Source Data - /data/{component-type}/{uuid} - For all encapsulated connections</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/process-groups/{id}/empty-all-connections-requests/{drop-request-id}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets the current status of a drop all flowfiles request.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td>drop-request-id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The drop request id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">DropRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /process-groups/{uuid} - For this and all encapsulated process groups</div>
            
        
            
            <div>Write Source Data - /data/{component-type}/{uuid} - For all encapsulated connections</div>
            
        
    </div>
</div>
        </div>
    
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Cancels and/or removes a request to drop all flowfiles.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td>drop-request-id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The drop request id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">DropRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /process-groups/{uuid} - For this and all encapsulated process groups</div>
            
        
            
            <div>Write Source Data - /data/{component-type}/{uuid} - For all encapsulated connections</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/process-groups/{id}/flow-contents</span>
    
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Replace Process Group contents with the given ID with the specified Process Group contents</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        This endpoint is used for replication within a cluster, when replacing a flow with a new flow. It expects that the flow beingreplaced is not under version control and that the given snapshot will not modify any Processor that is currently running or any Controller Service that is enabled. Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ProcessGroupImportEntity</a> 
                </td>
            
            <td>The process group replace request entity.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProcessGroupImportEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /process-groups/{uuid}</div>
            
        
            
            <div>Write - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/process-groups/{id}/funnels</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Creates a funnel</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">FunnelEntity</a> 
                </td>
            
            <td>The funnel configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">FunnelEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets all funnels</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">FunnelsEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/process-groups/{id}/input-ports</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Creates an input port</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">PortEntity</a> 
                </td>
            
            <td>The input port configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">PortEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets all input ports</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">InputPortsEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/process-groups/{id}/labels</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Creates a label</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">LabelEntity</a> 
                </td>
            
            <td>The label configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">LabelEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets all labels</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">LabelsEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/process-groups/{id}/local-modifications</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets a list of local modifications to the Process Group since it was last synchronized with the Flow Registry</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">FlowComparisonEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /process-groups/{uuid}</div>
            
        
            
            <div>Read - /{component-type}/{uuid} - For all encapsulated components</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/process-groups/{id}/output-ports</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Creates an output port</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">PortEntity</a> 
                </td>
            
            <td>The output port configuration.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">PortEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets all output ports</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">OutputPortsEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/process-groups/{id}/process-groups</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Creates a process group</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ProcessGroupEntity</a> 
                </td>
            
            <td>The process group configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProcessGroupEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets all process groups</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProcessGroupsEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/process-groups/{id}/process-groups/import</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Imports a specified process group</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProcessGroupEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/process-groups/{id}/process-groups/upload</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Uploads a versioned flow definition and creates a process group</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">multipart/form-data</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                
                </td>
            
            <td>The process group name.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                
                </td>
            
            <td>The process group X position.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                
                </td>
            
            <td>The process group Y position.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                
                </td>
            
            <td>The client id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                
                </td>
            
            <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProcessGroupEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/process-groups/{id}/processors</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Creates a new processor</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ProcessorEntity</a> 
                </td>
            
            <td>The processor configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProcessorEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /process-groups/{uuid}</div>
            
        
            
            <div>Read - any referenced Controller Services - /controller-services/{uuid}</div>
            
        
            
            <div>Write - if the Processor is restricted - /restricted-components</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets all processors</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td>includeDescendantGroups</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Whether or not to include processors from descendant process groups</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProcessorsEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/process-groups/{id}/remote-process-groups</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Creates a new process group</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">RemoteProcessGroupEntity</a> 
                </td>
            
            <td>The remote process group configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">RemoteProcessGroupEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets all remote process groups</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">RemoteProcessGroupsEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/process-groups/{id}/replace-requests</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Initiate the Replace Request of a Process Group with the given ID</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        This will initiate the action of replacing a process group with the given process group. This can be a lengthy process, as it will stop any Processors and disable any Controller Services necessary to perform the action and then restart them. As a result, the endpoint will immediately return a ProcessGroupReplaceRequestEntity, and the process of replacing the flow will occur asynchronously in the background. The client may then periodically poll the status of the request by issuing a GET request to /process-groups/replace-requests/{requestId}. Once the request is completed, the client is expected to issue a DELETE request to /process-groups/replace-requests/{requestId}. Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ProcessGroupImportEntity</a> 
                </td>
            
            <td>The process group replace request entity</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProcessGroupReplaceRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /process-groups/{uuid}</div>
            
        
            
            <div>Write - /process-groups/{uuid}</div>
            
        
            
            <div>Read - /{component-type}/{uuid} - For all encapsulated components</div>
            
        
            
            <div>Write - /{component-type}/{uuid} - For all encapsulated components</div>
            
        
            
            <div>Write - if the template contains any restricted components - /restricted-components</div>
            
        
            
            <div>Read - /parameter-contexts/{uuid} - For any Parameter Context that is referenced by a Property that is changed, added, or removed</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/process-groups/{id}/snippet-instance</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Copies a snippet and discards it.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">CopySnippetRequestEntity</a> 
                </td>
            
            <td>The copy snippet request.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">FlowEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /process-groups/{uuid}</div>
            
        
            
            <div>Read - /{component-type}/{uuid} - For each component in the snippet and their descendant components</div>
            
        
            
            <div>Write - if the snippet contains any restricted Processors - /restricted-components</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/process-groups/{id}/template-instance</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Instantiates a template</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">InstantiateTemplateRequestEntity</a> 
                </td>
            
            <td>The instantiate template request.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">FlowEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /process-groups/{uuid}</div>
            
        
            
            <div>Read - /templates/{uuid}</div>
            
        
            
            <div>Write - if the template contains any restricted components - /restricted-components</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/process-groups/{id}/templates</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Creates a template and discards the specified snippet.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">CreateTemplateRequestEntity</a> 
                </td>
            
            <td>The create template request.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">TemplateEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /process-groups/{uuid}</div>
            
        
            
            <div>Read - /{component-type}/{uuid} - For each component in the snippet and their descendant components</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/process-groups/{id}/templates/import</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Imports a template</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/xml</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/xml</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">TemplateEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/process-groups/{id}/templates/upload</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Uploads a template</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">multipart/form-data</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                
                </td>
            
            <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.</td>
        </tr>
    
        <tr>
            <td>template</td>
            <td>formData</td>
            
                
                    
                        <td>file </td>
                    
                
            
            <td>The binary content of the template file being uploaded.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/xml</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">TemplateEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/process-groups/{id}/variable-registry</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets a process group&#x27;s variable registry</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td>includeAncestorGroups</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Whether or not to include ancestor groups</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">VariableRegistryEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Updates the contents of a Process Group&#x27;s variable Registry</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">VariableRegistryEntity</a> 
                </td>
            
            <td>The variable registry configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">VariableRegistryEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/process-groups/{id}/variable-registry/update-requests</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Submits a request to update a process group&#x27;s variable registry</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">VariableRegistryEntity</a> 
                </td>
            
            <td>The variable registry configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">VariableRegistryUpdateRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/processors/run-status-details/queries</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Submits a query to retrieve the run status details of all processors that are in the given list of Processor IDs</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">RunStatusDetailsRequestEntity</a> 
                </td>
            
            <td>The request for the processors that should be included in the results</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProcessorsRunStatusDetailsEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /processors/{uuid} for each processor whose run status information is requested</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/processors/{id}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets a processor</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The processor id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProcessorEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /processors/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Updates a processor</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The processor id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ProcessorEntity</a> 
                </td>
            
            <td>The processor configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProcessorEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /processors/{uuid}</div>
            
        
            
            <div>Read - any referenced Controller Services if this request changes the reference - /controller-services/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes a processor</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>version</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The revision is used to verify the client is working with the latest version of the flow.</td>
        </tr>
    
        <tr>
            <td>clientId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If the client id is not specified, new one will be generated. This value (whether specified or generated) is included in the response.</td>
        </tr>
    
        <tr>
            <td>disconnectedNodeAcknowledged</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The processor id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProcessorEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /processors/{uuid}</div>
            
        
            
            <div>Write - Parent Process Group - /process-groups/{uuid}</div>
            
        
            
            <div>Read - any referenced Controller Services - /controller-services/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/processors/{id}/config/analysis</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Performs analysis of the component&#x27;s configuration, providing information about which attributes are referenced.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The processor id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ConfigurationAnalysisEntity</a> 
                </td>
            
            <td>The processor configuration analysis request.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ConfigurationAnalysisEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /processors/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/processors/{id}/config/verification-requests</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Performs verification of the Processor&#x27;s configuration</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        This will initiate the process of verifying a given Processor configuration. This may be a long-running task. As a result, this endpoint will immediately return a ProcessorConfigVerificationRequestEntity, and the process of performing the verification will occur asynchronously in the background. The client may then periodically poll the status of the request by issuing a GET request to /processors/{processorId}/verification-requests/{requestId}. Once the request is completed, the client is expected to issue a DELETE request to /processors/{processorId}/verification-requests/{requestId}.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The processor id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">VerifyConfigRequestEntity</a> 
                </td>
            
            <td>The processor configuration verification request.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">VerifyConfigRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /processors/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/processors/{id}/config/verification-requests/{requestId}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Returns the Verification Request with the given ID</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Returns the Verification Request with the given ID. Once an Verification Request has been created, that request can subsequently be retrieved via this endpoint, and the request that is fetched will contain the updated state, such as percent complete, the current state of the request, and any failures. 
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Processor</td>
        </tr>
    
        <tr>
            <td>requestId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Verification Request</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">VerifyConfigRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Only the user that submitted the request can get it</div>
            
        
    </div>
</div>
        </div>
    
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes the Verification Request with the given ID</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Deletes the Verification Request with the given ID. After a request is created, it is expected that the client will properly clean up the request by DELETE&#x27;ing it, once the Verification process has completed. If the request is deleted before the request completes, then the Verification request will finish the step that it is currently performing and then will cancel any subsequent steps.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Processor</td>
        </tr>
    
        <tr>
            <td>requestId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Verification Request</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">VerifyConfigRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Only the user that submitted the request can remove it</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/processors/{id}/descriptors</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets the descriptor for a processor property</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>clientId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If the client id is not specified, new one will be generated. This value (whether specified or generated) is included in the response.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The processor id.</td>
        </tr>
    
        <tr>
            <td>propertyName</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The property name.</td>
        </tr>
    
        <tr>
            <td>sensitive</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Property Descriptor requested sensitive status</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">PropertyDescriptorEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /processors/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/processors/{id}/diagnostics</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets diagnostics information about a processor</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The processor id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProcessorEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /processors/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/processors/{id}/run-status</span>
    
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Updates run status of a processor</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The processor id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ProcessorRunStatusEntity</a> 
                </td>
            
            <td>The processor run status.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProcessorEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /processors/{uuid} or /operation/processors/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/processors/{id}/state</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets the state for a processor</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The processor id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ComponentStateEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /processors/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/processors/{id}/state/clear-requests</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Clears the state for a processor</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The processor id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ComponentStateEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /processors/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/processors/{id}/threads</span>
    
    
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Terminates a processor, essentially &quot;deleting&quot; its threads and any active tasks</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The processor id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProcessorEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /processors/{uuid} or /operation/processors/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/provenance</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Submits a provenance query</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Provenance queries may be long running so this endpoint submits a request. The response will include the current state of the query. If the request is not completed the URI in the response can be used at a later time to get the updated state of the query. Once the query has completed the provenance request should be deleted by the client who originally submitted it.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ProvenanceEntity</a> 
                </td>
            
            <td>The provenance query details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProvenanceEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /provenance</div>
            
        
            
            <div>Read - /data/{component-type}/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/provenance-events/latest/replays</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Replays content from a provenance event</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ReplayLastEventRequestEntity</a> 
                </td>
            
            <td>The replay request.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ReplayLastEventResponseEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read Component Provenance Data - /provenance-data/{component-type}/{uuid}</div>
            
        
            
            <div>Read Component Data - /data/{component-type}/{uuid}</div>
            
        
            
            <div>Write Component Data - /data/{component-type}/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/provenance-events/replays</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Replays content from a provenance event</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">SubmitReplayRequestEntity</a> 
                </td>
            
            <td>The replay request.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProvenanceEventEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read Component Provenance Data - /provenance-data/{component-type}/{uuid}</div>
            
        
            
            <div>Read Component Data - /data/{component-type}/{uuid}</div>
            
        
            
            <div>Write Component Data - /data/{component-type}/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/provenance-events/{id}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets a provenance event</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>clusterNodeId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The id of the node where this event exists if clustered.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The provenance event id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProvenanceEventEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read Component Provenance Data - /provenance-data/{component-type}/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/provenance-events/{id}/content/input</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets the input content for a provenance event</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>clusterNodeId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The id of the node where the content exists if clustered.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The provenance event id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">StreamingOutput</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read Component Provenance Data - /provenance-data/{component-type}/{uuid}</div>
            
        
            
            <div>Read Component Data - /data/{component-type}/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/provenance-events/{id}/content/output</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets the output content for a provenance event</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>clusterNodeId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The id of the node where the content exists if clustered.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The provenance event id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">StreamingOutput</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read Component Provenance Data - /provenance-data/{component-type}/{uuid}</div>
            
        
            
            <div>Read Component Data - /data/{component-type}/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/provenance/lineage</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Submits a lineage query</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Lineage queries may be long running so this endpoint submits a request. The response will include the current state of the query. If the request is not completed the URI in the response can be used at a later time to get the updated state of the query. Once the query has completed the lineage request should be deleted by the client who originally submitted it.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">LineageEntity</a> 
                </td>
            
            <td>The lineage query details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">LineageEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /provenance</div>
            
        
            
            <div>Read - /data/{component-type}/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/provenance/lineage/{id}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets a lineage query</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>clusterNodeId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The id of the node where this query exists if clustered.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The id of the lineage query.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">LineageEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /provenance</div>
            
        
            
            <div>Read - /data/{component-type}/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes a lineage query</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>clusterNodeId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The id of the node where this query exists if clustered.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The id of the lineage query.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">LineageEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /provenance</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/provenance/search-options</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets the searchable attributes for provenance events</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProvenanceOptionsEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /provenance</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/provenance/{id}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets a provenance query</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>clusterNodeId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The id of the node where this query exists if clustered.</td>
        </tr>
    
        <tr>
            <td>summarize</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Whether or not incremental results are returned. If false, provenance events are only returned once the query completes. This property is true by default.</td>
        </tr>
    
        <tr>
            <td>incrementalResults</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Whether or not to summarize provenance events returned. This property is false by default.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The id of the provenance query.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProvenanceEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /provenance</div>
            
        
            
            <div>Read - /data/{component-type}/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes a provenance query</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>clusterNodeId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The id of the node where this query exists if clustered.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The id of the provenance query.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ProvenanceEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /provenance</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/remote-process-groups/process-group/{id}/run-status</span>
    
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Updates run status of all remote process groups in a process group (recursively)</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">RemotePortRunStatusEntity</a> 
                </td>
            
            <td>The remote process groups run status.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">RemoteProcessGroupEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /remote-process-groups/{uuid} or /operation/remote-process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/remote-process-groups/{id}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets a remote process group</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The remote process group id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">RemoteProcessGroupEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /remote-process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Updates a remote process group</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The remote process group id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">RemoteProcessGroupEntity</a> 
                </td>
            
            <td>The remote process group.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">RemoteProcessGroupEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /remote-process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes a remote process group</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>version</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The revision is used to verify the client is working with the latest version of the flow.</td>
        </tr>
    
        <tr>
            <td>clientId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If the client id is not specified, new one will be generated. This value (whether specified or generated) is included in the response.</td>
        </tr>
    
        <tr>
            <td>disconnectedNodeAcknowledged</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The remote process group id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">RemoteProcessGroupEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /remote-process-groups/{uuid}</div>
            
        
            
            <div>Write - Parent Process Group - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/remote-process-groups/{id}/input-ports/{port-id}</span>
    
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Updates a remote port</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The remote process group id.</td>
        </tr>
    
        <tr>
            <td>port-id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The remote process group port id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">RemoteProcessGroupPortEntity</a> 
                </td>
            
            <td>The remote process group port.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">RemoteProcessGroupPortEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /remote-process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/remote-process-groups/{id}/input-ports/{port-id}/run-status</span>
    
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Updates run status of a remote port</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The remote process group id.</td>
        </tr>
    
        <tr>
            <td>port-id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The remote process group port id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">RemotePortRunStatusEntity</a> 
                </td>
            
            <td>The remote process group port.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">RemoteProcessGroupPortEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /remote-process-groups/{uuid} or /operation/remote-process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/remote-process-groups/{id}/output-ports/{port-id}</span>
    
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Updates a remote port</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The remote process group id.</td>
        </tr>
    
        <tr>
            <td>port-id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The remote process group port id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">RemoteProcessGroupPortEntity</a> 
                </td>
            
            <td>The remote process group port.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">RemoteProcessGroupPortEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /remote-process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/remote-process-groups/{id}/output-ports/{port-id}/run-status</span>
    
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Updates run status of a remote port</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The remote process group id.</td>
        </tr>
    
        <tr>
            <td>port-id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The remote process group port id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">RemotePortRunStatusEntity</a> 
                </td>
            
            <td>The remote process group port.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">RemoteProcessGroupPortEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /remote-process-groups/{uuid} or /operation/remote-process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/remote-process-groups/{id}/run-status</span>
    
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Updates run status of a remote process group</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The remote process group id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">RemotePortRunStatusEntity</a> 
                </td>
            
            <td>The remote process group run status.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">RemoteProcessGroupEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /remote-process-groups/{uuid} or /operation/remote-process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/remote-process-groups/{id}/state</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets the state for a RemoteProcessGroup</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The processor id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ComponentStateEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /remote-process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/reporting-tasks/{id}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets a reporting task</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The reporting task id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ReportingTaskEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /reporting-tasks/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Updates a reporting task</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The reporting task id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ReportingTaskEntity</a> 
                </td>
            
            <td>The reporting task configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ReportingTaskEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /reporting-tasks/{uuid}</div>
            
        
            
            <div>Read - any referenced Controller Services if this request changes the reference - /controller-services/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes a reporting task</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>version</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The revision is used to verify the client is working with the latest version of the flow.</td>
        </tr>
    
        <tr>
            <td>clientId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If the client id is not specified, new one will be generated. This value (whether specified or generated) is included in the response.</td>
        </tr>
    
        <tr>
            <td>disconnectedNodeAcknowledged</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The reporting task id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ReportingTaskEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /reporting-tasks/{uuid}</div>
            
        
            
            <div>Write - /controller</div>
            
        
            
            <div>Read - any referenced Controller Services - /controller-services/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/reporting-tasks/{id}/config/analysis</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Performs analysis of the component&#x27;s configuration, providing information about which attributes are referenced.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The reporting task id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ConfigurationAnalysisEntity</a> 
                </td>
            
            <td>The configuration analysis request.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ConfigurationAnalysisEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /reporting-tasks/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/reporting-tasks/{id}/config/verification-requests</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Performs verification of the Reporting Task&#x27;s configuration</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        This will initiate the process of verifying a given Reporting Task configuration. This may be a long-running task. As a result, this endpoint will immediately return a ReportingTaskConfigVerificationRequestEntity, and the process of performing the verification will occur asynchronously in the background. The client may then periodically poll the status of the request by issuing a GET request to /reporting-tasks/{taskId}/verification-requests/{requestId}. Once the request is completed, the client is expected to issue a DELETE request to /reporting-tasks/{serviceId}/verification-requests/{requestId}.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The reporting task id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">VerifyConfigRequestEntity</a> 
                </td>
            
            <td>The reporting task configuration verification request.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">VerifyConfigRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /reporting-tasks/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/reporting-tasks/{id}/config/verification-requests/{requestId}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Returns the Verification Request with the given ID</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Returns the Verification Request with the given ID. Once an Verification Request has been created, that request can subsequently be retrieved via this endpoint, and the request that is fetched will contain the updated state, such as percent complete, the current state of the request, and any failures. 
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Reporting Task</td>
        </tr>
    
        <tr>
            <td>requestId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Verification Request</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">VerifyConfigRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Only the user that submitted the request can get it</div>
            
        
    </div>
</div>
        </div>
    
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes the Verification Request with the given ID</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Deletes the Verification Request with the given ID. After a request is created, it is expected that the client will properly clean up the request by DELETE&#x27;ing it, once the Verification process has completed. If the request is deleted before the request completes, then the Verification request will finish the step that it is currently performing and then will cancel any subsequent steps.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Reporting Task</td>
        </tr>
    
        <tr>
            <td>requestId</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Verification Request</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">VerifyConfigRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Only the user that submitted the request can remove it</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/reporting-tasks/{id}/descriptors</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets a reporting task property descriptor</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The reporting task id.</td>
        </tr>
    
        <tr>
            <td>propertyName</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The property name.</td>
        </tr>
    
        <tr>
            <td>sensitive</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Property Descriptor requested sensitive status</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">PropertyDescriptorEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /reporting-tasks/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/reporting-tasks/{id}/run-status</span>
    
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Updates run status of a reporting task</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The reporting task id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">ReportingTaskRunStatusEntity</a> 
                </td>
            
            <td>The reporting task run status.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ReportingTaskEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /reporting-tasks/{uuid} or  or /operation/reporting-tasks/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/reporting-tasks/{id}/state</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets the state for a reporting task</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The reporting task id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ComponentStateEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /reporting-tasks/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/reporting-tasks/{id}/state/clear-requests</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Clears the state for a reporting task</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The reporting task id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ComponentStateEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /reporting-tasks/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/resources</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets the available resources that support access/authorization policies</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ResourcesEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /resources</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/site-to-site</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Returns the details about this NiFi necessary to communicate via site to site</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">ControllerEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /site-to-site</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/site-to-site/peers</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Returns the available Peers and its status of this NiFi</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json, application/xml</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">PeersEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /site-to-site</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/snippets</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Creates a snippet. The snippet will be automatically discarded if not used in a subsequent request after 1 minute.</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">SnippetEntity</a> 
                </td>
            
            <td>The snippet configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">SnippetEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read or Write - /{component-type}/{uuid} - For every component (all Read or all Write) in the Snippet and their descendant components</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/snippets/{id}</span>
    
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Move&#x27;s the components in this Snippet into a new Process Group and discards the snippet</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The snippet id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">SnippetEntity</a> 
                </td>
            
            <td>The snippet configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">SnippetEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write Process Group - /process-groups/{uuid}</div>
            
        
            
            <div>Write - /{component-type}/{uuid} - For each component in the Snippet and their descendant components</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes the components in a snippet and discards the snippet</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>disconnectedNodeAcknowledged</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The snippet id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">SnippetEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /{component-type}/{uuid} - For each component in the Snippet and their descendant components</div>
            
        
            
            <div>Write - Parent Process Group - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/system-diagnostics</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets the diagnostics for the system NiFi is running on</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>nodewise</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Whether or not to include the breakdown per node. Optional, defaults to false</td>
        </tr>
    
        <tr>
            <td>clusterNodeId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The id of the node where to get the status.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">SystemDiagnosticsEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /system</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/templates/{id}</span>
    
    
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes a template</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>disconnectedNodeAcknowledged</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The template id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">TemplateEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /templates/{uuid}</div>
            
        
            
            <div>Write - Parent Process Group - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/templates/{id}/download</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Exports a template</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The template id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/xml</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /templates/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/tenants/search-results</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Searches for a tenant with the specified identity</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>q</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>Identity to search for.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">TenantsEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /tenants</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/tenants/user-groups</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Creates a user group</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">UserGroupEntity</a> 
                </td>
            
            <td>The user group configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">UserGroupEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /tenants</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets all user groups</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">UserGroupsEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /tenants</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/tenants/user-groups/{id}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets a user group</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The user group id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">UserGroupEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /tenants</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Updates a user group</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The user group id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">UserGroupEntity</a> 
                </td>
            
            <td>The user group configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">UserGroupEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /tenants</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes a user group</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>version</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The revision is used to verify the client is working with the latest version of the flow.</td>
        </tr>
    
        <tr>
            <td>clientId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If the client id is not specified, new one will be generated. This value (whether specified or generated) is included in the response.</td>
        </tr>
    
        <tr>
            <td>disconnectedNodeAcknowledged</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The user group id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">UserGroupEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /tenants</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/tenants/users</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Creates a user</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">UserEntity</a> 
                </td>
            
            <td>The user configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">UserEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /tenants</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets all users</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">UsersEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /tenants</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/tenants/users/{id}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets a user</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The user id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">UserEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /tenants</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Updates a user</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The user id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">UserEntity</a> 
                </td>
            
            <td>The user configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">UserEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /tenants</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes a user</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>version</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The revision is used to verify the client is working with the latest version of the flow.</td>
        </tr>
    
        <tr>
            <td>clientId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If the client id is not specified, new one will be generated. This value (whether specified or generated) is included in the response.</td>
        </tr>
    
        <tr>
            <td>disconnectedNodeAcknowledged</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The user id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">UserEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /tenants</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/versions/active-requests</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Create a version control request</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Creates a request so that a Process Group can be placed under Version Control or have its Version Control configuration changed. Creating this request will prevent any other threads from simultaneously saving local changes to Version Control. It will not, however, actually save the local flow to the Flow Registry. A POST to /versions/process-groups/{id} should be used to initiate saving of the local flow to the Flow Registry. Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">CreateActiveRequestEntity</a> 
                </td>
            
            <td>The versioned flow details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">text/plain</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Write - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/versions/active-requests/{id}</span>
    
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Updates the request with the given ID</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The request ID.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">VersionControlComponentMappingEntity</a> 
                </td>
            
            <td>The version control component mapping.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">VersionControlInformationEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Only the user that submitted the request can update it</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes the version control request with the given ID</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Deletes the Version Control Request with the given ID. This will allow other threads to save flows to the Flow Registry. See also the documentation for POSTing to /versions/active-requests for information regarding why this is done. Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>disconnectedNodeAcknowledged</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The request ID.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Only the user that submitted the request can remove it</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/versions/process-groups/{id}</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Save the Process Group with the given ID</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Begins version controlling the Process Group with the given ID or commits changes to the Versioned Flow, depending on if the provided VersionControlInformation includes a flowId. Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">StartVersionControlRequestEntity</a> 
                </td>
            
            <td>The versioned flow details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">VersionControlInformationEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /process-groups/{uuid}</div>
            
        
            
            <div>Write - /process-groups/{uuid}</div>
            
        
            
            <div>Read - /{component-type}/{uuid} - For all encapsulated components</div>
            
        
            
            <div>Read - any referenced Controller Services by any encapsulated components - /controller-services/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets the Version Control information for a process group</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">VersionControlInformationEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint put">
            <div class="operation-handle">
                <div class="method">PUT</div>
                <div class="path mono"></div>
                <div class="summary">Update the version of a Process Group with the given ID</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        For a Process Group that is already under Version Control, this will update the version of the flow to a different version. This endpoint expects that the given snapshot will not modify any Processor that is currently running or any Controller Service that is enabled. Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">VersionedFlowSnapshotEntity</a> 
                </td>
            
            <td>The controller service configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">VersionControlInformationEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /process-groups/{uuid}</div>
            
        
            
            <div>Write - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Stops version controlling the Process Group with the given ID</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Stops version controlling the Process Group with the given ID. The Process Group will no longer track to any Versioned Flow. Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>version</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The version is used to verify the client is working with the latest version of the flow.</td>
        </tr>
    
        <tr>
            <td>clientId</td>
            <td>query</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>If the client id is not specified, a new one will be generated. This value (whether specified or generated) is included in the response.</td>
        </tr>
    
        <tr>
            <td>disconnectedNodeAcknowledged</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">VersionControlInformationEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /process-groups/{uuid}</div>
            
        
            
            <div>Write - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/versions/process-groups/{id}/download</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Gets the latest version of a Process Group for download</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /process-groups/{uuid}</div>
            
        
    </div>
</div>
        </div>
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/versions/revert-requests/process-groups/{id}</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Initiate the Revert Request of a Process Group with the given ID</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        For a Process Group that is already under Version Control, this will initiate the action of reverting any local changes that have been made to the Process Group since it was last synchronized with the Flow Registry. This will result in the flow matching the Versioned Flow that exists in the Flow Registry. This can be a lengthy process, as it will stop any Processors and disable any Controller Services necessary to perform the action and then restart them. As a result, the endpoint will immediately return a VersionedFlowUpdateRequestEntity, and the process of updating the flow will occur asynchronously in the background. The client may then periodically poll the status of the request by issuing a GET request to /versions/revert-requests/{requestId}. Once the request is completed, the client is expected to issue a DELETE request to /versions/revert-requests/{requestId}. Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">VersionControlInformationEntity</a> 
                </td>
            
            <td>The Version Control Information to revert to.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">VersionedFlowUpdateRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /process-groups/{uuid}</div>
            
        
            
            <div>Write - /process-groups/{uuid}</div>
            
        
            
            <div>Read - /{component-type}/{uuid} - For all encapsulated components</div>
            
        
            
            <div>Write - /{component-type}/{uuid} - For all encapsulated components</div>
            
        
            
            <div>Write - if the template contains any restricted components - /restricted-components</div>
            
        
            
            <div>Read - /parameter-contexts/{uuid} - For any Parameter Context that is referenced by a Property that is changed, added, or removed</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/versions/revert-requests/{id}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Returns the Revert Request with the given ID</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Returns the Revert Request with the given ID. Once a Revert Request has been created by performing a POST to /versions/revert-requests/process-groups/{id}, that request can subsequently be retrieved via this endpoint, and the request that is fetched will contain the updated state, such as percent complete, the current state of the request, and any failures. Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Revert Request</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">VersionedFlowUpdateRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Only the user that submitted the request can get it</div>
            
        
    </div>
</div>
        </div>
    
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes the Revert Request with the given ID</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Deletes the Revert Request with the given ID. After a request is created via a POST to /versions/revert-requests/process-groups/{id}, it is expected that the client will properly clean up the request by DELETE&#x27;ing it, once the Revert process has completed. If the request is deleted before the request completes, then the Revert request will finish the step that it is currently performing and then will cancel any subsequent steps. Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>disconnectedNodeAcknowledged</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Revert Request</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">VersionedFlowUpdateRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Only the user that submitted the request can remove it</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/versions/update-requests/process-groups/{id}</span>
    
        <div class="endpoint post">
            <div class="operation-handle">
                <div class="method">POST</div>
                <div class="path mono"></div>
                <div class="summary">Initiate the Update Request of a Process Group with the given ID</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        For a Process Group that is already under Version Control, this will initiate the action of changing from a specific version of the flow in the Flow Registry to a different version of the flow. This can be a lengthy process, as it will stop any Processors and disable any Controller Services necessary to perform the action and then restart them. As a result, the endpoint will immediately return a VersionedFlowUpdateRequestEntity, and the process of updating the flow will occur asynchronously in the background. The client may then periodically poll the status of the request by issuing a GET request to /versions/update-requests/{requestId}. Once the request is completed, the client is expected to issue a DELETE request to /versions/update-requests/{requestId}. Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The process group id.</td>
        </tr>
    
        <tr>
            <td></td>
            <td>body</td>
            
                <td>
                
                <a class="type-link" href="javascript:void(0);">VersionControlInformationEntity</a> 
                </td>
            
            <td>The controller service configuration details.</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">VersionedFlowUpdateRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Read - /process-groups/{uuid}</div>
            
        
            
            <div>Write - /process-groups/{uuid}</div>
            
        
            
            <div>Read - /{component-type}/{uuid} - For all encapsulated components</div>
            
        
            
            <div>Write - /{component-type}/{uuid} - For all encapsulated components</div>
            
        
            
            <div>Write - if the template contains any restricted components - /restricted-components</div>
            
        
            
            <div>Read - /parameter-contexts/{uuid} - For any Parameter Context that is referenced by a Property that is changed, added, or removed</div>
            
        
    </div>
</div>
        </div>
    
    
    
    
</div>
            
                
<div class="endpoints">
    <span class="path hidden">/versions/update-requests/{id}</span>
    
    
        <div class="endpoint get">
            <div class="operation-handle">
                <div class="method">GET</div>
                <div class="path mono"></div>
                <div class="summary">Returns the Update Request with the given ID</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Returns the Update Request with the given ID. Once an Update Request has been created by performing a POST to /versions/update-requests/process-groups/{id}, that request can subsequently be retrieved via this endpoint, and the request that is fetched will contain the updated state, such as percent complete, the current state of the request, and any failures. Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Update Request</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">VersionedFlowUpdateRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Only the user that submitted the request can get it</div>
            
        
    </div>
</div>
        </div>
    
    
    
        <div class="endpoint delete">
            <div class="operation-handle">
                <div class="method">DELETE</div>
                <div class="path mono"></div>
                <div class="summary">Deletes the Update Request with the given ID</div>
                <div class="clear"></div>
            </div>
            
<div class="operation hidden">
    
    <div class="description">
        Deletes the Update Request with the given ID. After a request is created via a POST to /versions/update-requests/process-groups/{id}, it is expected that the client will properly clean up the request by DELETE&#x27;ing it, once the Update process has completed. If the request is deleted before the request completes, then the Update request will finish the step that it is currently performing and then will cancel any subsequent steps. Note: This endpoint is subject to change as NiFi and it&#x27;s REST API evolve.
    </div>
    
    <div class="title">Request</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">consumes:</div><div class="mono">*/*</div><div class="clear"></div></div>
        
    </div>
    
    <table>
        <thead>
            <tr>
                <th>Name</th>
                <th>Location</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
    
    
        <tr>
            <td>disconnectedNodeAcknowledged</td>
            <td>query</td>
            
                
                    
                        <td>boolean </td>
                    
                
            
            <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.</td>
        </tr>
    
        <tr>
            <td>id</td>
            <td>path</td>
            
                
                    
                        <td>string </td>
                    
                
            
            <td>The ID of the Update Request</td>
        </tr>
    
    
        </tbody>
    </table>
    
    <div class="title">Response</div>
    <div class="mediatypes details">
        
        <div class="mediatype"><div class="title">produces:</div><div class="mono">application/json</div><div class="clear"></div></div>
        
    </div>
    <table>
        <thead>
            <tr>
                <th>Status Code</th>
                <th>Type</th>
                <th>Description</th>
            </tr>
        </thead>
        <tbody>
            
            <tr>
                <td>200</td>
                <td>
                    
                        <a class="type-link" href="javascript:void(0);">VersionedFlowUpdateRequestEntity</a>
                    
                </td>
                <td>successful operation</td>
            </tr>
            
            <tr>
                <td>400</td>
                <td>
                    
                        string
                    
                </td>
                <td>NiFi was unable to complete the request because it was invalid. The request should not be retried without modification.</td>
            </tr>
            
            <tr>
                <td>401</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client could not be authenticated.</td>
            </tr>
            
            <tr>
                <td>403</td>
                <td>
                    
                        string
                    
                </td>
                <td>Client is not authorized to make this request.</td>
            </tr>
            
            <tr>
                <td>404</td>
                <td>
                    
                        string
                    
                </td>
                <td>The specified resource could not be found.</td>
            </tr>
            
            <tr>
                <td>409</td>
                <td>
                    
                        string
                    
                </td>
                <td>The request was valid but NiFi was not in the appropriate state to process it. Retrying the same request later may be successful.</td>
            </tr>
            
        </tbody>
    </table>
    <div class="title">Authorization</div>
    <div class="authorization details">
        
            
            <div>Only the user that submitted the request can remove it</div>
            
        
    </div>
</div>
        </div>
    
</div>
            
        </div>
        
            
<div id="AboutDTO" class="type hidden">
    <h3>AboutDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>title</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The title to be used on the page and in the about dialog.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>version</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The version of this NiFi.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for the NiFi.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>contentViewerUrl</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URL for the content viewer if configured.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>timezone</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timezone of the NiFi instance.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>buildTag</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Build tag
                        
                        </td>
                </tr>
            
                <tr>
                    <td>buildRevision</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Build revision or commit hash
                        
                        </td>
                </tr>
            
                <tr>
                    <td>buildBranch</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Build branch
                        
                        </td>
                </tr>
            
                <tr>
                    <td>buildTimestamp</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Build timestamp
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "title": "value"<span class="comma">,</span>
    "version": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "contentViewerUrl": "value"<span class="comma">,</span>
    "timezone": "value"<span class="comma">,</span>
    "buildTag": "value"<span class="comma">,</span>
    "buildRevision": "value"<span class="comma">,</span>
    "buildBranch": "value"<span class="comma">,</span>
    "buildTimestamp": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="AboutEntity" class="type hidden">
    <h3>AboutEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>about</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">AboutDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "about": <span class="nested collapsed"><span class="nested-id hidden">AboutDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="AccessConfigurationDTO" class="type hidden">
    <h3>AccessConfigurationDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>supportsLogin</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether or not this NiFi supports user login.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "supportsLogin": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="AccessConfigurationEntity" class="type hidden">
    <h3>AccessConfigurationEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>config</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">AccessConfigurationDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "config": <span class="nested collapsed"><span class="nested-id hidden">AccessConfigurationDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="AccessPolicyDTO" class="type hidden">
    <h3>AccessPolicyDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionedComponentId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the corresponding component that is under version control
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parentGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of parent process group of this component if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>resource</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The resource for this access policy.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>action</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The action associated with this access policy.
                         Allowable values: read, write
                        </td>
                </tr>
            
                <tr>
                    <td>componentReference</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ComponentReferenceEntity</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Component this policy references if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>configurable</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether this policy is configurable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>users</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">TenantEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The set of user IDs associated with this access policy.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>userGroups</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">TenantEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The set of user group IDs associated with this access policy.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "versionedComponentId": "value"<span class="comma">,</span>
    "parentGroupId": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "resource": "value"<span class="comma">,</span>
    "action": "value"<span class="comma">,</span>
    "componentReference": <span class="nested collapsed"><span class="nested-id hidden">ComponentReferenceEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "configurable": true<span class="comma">,</span>
    "users": [<span class="nested collapsed"><span class="nested-id hidden">TenantEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "userGroups": [<span class="nested collapsed"><span class="nested-id hidden">TenantEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="AccessPolicyEntity" class="type hidden">
    <h3>AccessPolicyEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for futures requests to the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bulletins</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BulletinEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bulletins for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>generated</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>When this content was generated.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>component</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">AccessPolicyDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "bulletins": [<span class="nested collapsed"><span class="nested-id hidden">BulletinEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "generated": "value"<span class="comma">,</span>
    "component": <span class="nested collapsed"><span class="nested-id hidden">AccessPolicyDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="AccessPolicySummaryDTO" class="type hidden">
    <h3>AccessPolicySummaryDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionedComponentId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the corresponding component that is under version control
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parentGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of parent process group of this component if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>resource</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The resource for this access policy.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>action</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The action associated with this access policy.
                         Allowable values: read, write
                        </td>
                </tr>
            
                <tr>
                    <td>componentReference</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ComponentReferenceEntity</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Component this policy references if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>configurable</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether this policy is configurable.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "versionedComponentId": "value"<span class="comma">,</span>
    "parentGroupId": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "resource": "value"<span class="comma">,</span>
    "action": "value"<span class="comma">,</span>
    "componentReference": <span class="nested collapsed"><span class="nested-id hidden">ComponentReferenceEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "configurable": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="AccessPolicySummaryEntity" class="type hidden">
    <h3>AccessPolicySummaryEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for futures requests to the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bulletins</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BulletinEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bulletins for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>component</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">AccessPolicySummaryDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "bulletins": [<span class="nested collapsed"><span class="nested-id hidden">BulletinEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "component": <span class="nested collapsed"><span class="nested-id hidden">AccessPolicySummaryDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="AccessStatusDTO" class="type hidden">
    <h3>AccessStatusDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>identity</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The user identity.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>status</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The user access status.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>message</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Additional details about the user access status.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "identity": "value"<span class="comma">,</span>
    "status": "value"<span class="comma">,</span>
    "message": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="AccessStatusEntity" class="type hidden">
    <h3>AccessStatusEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>accessStatus</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">AccessStatusDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "accessStatus": <span class="nested collapsed"><span class="nested-id hidden">AccessStatusDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="AccessTokenExpirationDTO" class="type hidden">
    <h3>AccessTokenExpirationDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>expiration</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Token Expiration
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "expiration": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="AccessTokenExpirationEntity" class="type hidden">
    <h3>AccessTokenExpirationEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>accessTokenExpiration</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">AccessTokenExpirationDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "accessTokenExpiration": <span class="nested collapsed"><span class="nested-id hidden">AccessTokenExpirationDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ActionDTO" class="type hidden">
    <h3>ActionDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The action id.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>userIdentity</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The identity of the user that performed the action.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>timestamp</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp of the action.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>sourceId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the source component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>sourceName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the source component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>sourceType</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The type of the source component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>componentDetails</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ComponentDetailsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The details of the source component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>operation</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The operation that was performed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>actionDetails</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ActionDetailsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The details of the action.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": 0<span class="comma">,</span>
    "userIdentity": "value"<span class="comma">,</span>
    "timestamp": "value"<span class="comma">,</span>
    "sourceId": "value"<span class="comma">,</span>
    "sourceName": "value"<span class="comma">,</span>
    "sourceType": "value"<span class="comma">,</span>
    "componentDetails": <span class="nested collapsed"><span class="nested-id hidden">ComponentDetailsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "operation": "value"<span class="comma">,</span>
    "actionDetails": <span class="nested collapsed"><span class="nested-id hidden">ActionDetailsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ActionDetailsDTO" class="type hidden">
    <h3>ActionDetailsDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ActionEntity" class="type hidden">
    <h3>ActionEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>timestamp</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp of the action.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>sourceId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>canRead</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether the user can read a given resource.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>action</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ActionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": 0<span class="comma">,</span>
    "timestamp": "value"<span class="comma">,</span>
    "sourceId": "value"<span class="comma">,</span>
    "canRead": true<span class="comma">,</span>
    "action": <span class="nested collapsed"><span class="nested-id hidden">ActionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ActivateControllerServicesEntity" class="type hidden">
    <h3>ActivateControllerServicesEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the ProcessGroup
                        
                        </td>
                </tr>
            
                <tr>
                    <td>state</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The desired state of the descendant components
                         Allowable values: ENABLED, DISABLED
                        </td>
                </tr>
            
                <tr>
                    <td>components</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Optional services to schedule. If not specified, all authorized descendant controller services will be used.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "state": "value"<span class="comma">,</span>
    "components": <span class="open-object">&#123;
        "name": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>
    &#125;</span><span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="AffectedComponentDTO" class="type hidden">
    <h3>AffectedComponentDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>processGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The UUID of the Process Group that this component is in
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The UUID of this component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>referenceType</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The type of this component
                         Allowable values: PROCESSOR, CONTROLLER_SERVICE, INPUT_PORT, OUTPUT_PORT, REMOTE_INPUT_PORT, REMOTE_OUTPUT_PORT
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>state</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The scheduled state of a processor or reporting task referencing a controller service. If this component is another controller service, this field represents the controller service state.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>activeThreadCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of active threads for the referencing component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>validationErrors</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The validation errors for the component.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "processGroupId": "value"<span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
    "referenceType": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "state": "value"<span class="comma">,</span>
    "activeThreadCount": 0<span class="comma">,</span>
    "validationErrors": ["value"]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="AffectedComponentEntity" class="type hidden">
    <h3>AffectedComponentEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for futures requests to the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bulletins</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BulletinEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bulletins for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>component</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">AffectedComponentDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>processGroup</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ProcessGroupNameDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Process Group that the component belongs to
                        
                        </td>
                </tr>
            
                <tr>
                    <td>referenceType</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The type of component referenced
                         Allowable values: PROCESSOR, CONTROLLER_SERVICE, INPUT_PORT, OUTPUT_PORT, REMOTE_INPUT_PORT, REMOTE_OUTPUT_PORT
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "bulletins": [<span class="nested collapsed"><span class="nested-id hidden">BulletinEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "component": <span class="nested collapsed"><span class="nested-id hidden">AffectedComponentDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "processGroup": <span class="nested collapsed"><span class="nested-id hidden">ProcessGroupNameDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "referenceType": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="AllowableValueDTO" class="type hidden">
    <h3>AllowableValueDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>displayName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A human readable value that is allowed for the property descriptor.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>value</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A value that is allowed for the property descriptor.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>description</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A description for this allowable value.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "displayName": "value"<span class="comma">,</span>
    "value": "value"<span class="comma">,</span>
    "description": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="AllowableValueEntity" class="type hidden">
    <h3>AllowableValueEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>allowableValue</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">AllowableValueDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>canRead</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether the user can read a given resource.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "allowableValue": <span class="nested collapsed"><span class="nested-id hidden">AllowableValueDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "canRead": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="AttributeDTO" class="type hidden">
    <h3>AttributeDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The attribute name.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>value</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The attribute value.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>previousValue</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The value of the attribute before the event took place.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "name": "value"<span class="comma">,</span>
    "value": "value"<span class="comma">,</span>
    "previousValue": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="BannerDTO" class="type hidden">
    <h3>BannerDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>headerText</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The header text.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>footerText</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The footer text.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "headerText": "value"<span class="comma">,</span>
    "footerText": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="BannerEntity" class="type hidden">
    <h3>BannerEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>banners</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">BannerDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "banners": <span class="nested collapsed"><span class="nested-id hidden">BannerDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="BatchSettingsDTO" class="type hidden">
    <h3>BatchSettingsDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>count</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Preferred number of flow files to include in a transaction.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>size</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Preferred number of bytes to include in a transaction.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>duration</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Preferred amount of time that a transaction should span.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "count": 0<span class="comma">,</span>
    "size": "value"<span class="comma">,</span>
    "duration": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="BatchSize" class="type hidden">
    <h3>BatchSize</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>count</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Preferred number of flow files to include in a transaction.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>size</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Preferred number of bytes to include in a transaction.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>duration</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Preferred amount of time that a transaction should span.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "count": 0<span class="comma">,</span>
    "size": "value"<span class="comma">,</span>
    "duration": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="BuildInfo" class="type hidden">
    <h3>BuildInfo</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>version</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The version number of the built component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The SCM revision id of the source code used for this build.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>timestamp</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp (milliseconds since Epoch) of the build.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>targetArch</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The target architecture of the built component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>compiler</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The compiler used for the build
                        
                        </td>
                </tr>
            
                <tr>
                    <td>compilerFlags</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The compiler flags used for the build.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "version": "value"<span class="comma">,</span>
    "revision": "value"<span class="comma">,</span>
    "timestamp": 0<span class="comma">,</span>
    "targetArch": "value"<span class="comma">,</span>
    "compiler": "value"<span class="comma">,</span>
    "compilerFlags": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="BulletinBoardDTO" class="type hidden">
    <h3>BulletinBoardDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>bulletins</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BulletinEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bulletins in the bulletin board, that matches the supplied request.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>generated</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp when this report was generated.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "bulletins": [<span class="nested collapsed"><span class="nested-id hidden">BulletinEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "generated": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="BulletinBoardEntity" class="type hidden">
    <h3>BulletinBoardEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>bulletinBoard</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">BulletinBoardDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "bulletinBoard": <span class="nested collapsed"><span class="nested-id hidden">BulletinBoardDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="BulletinDTO" class="type hidden">
    <h3>BulletinDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the bulletin.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>nodeAddress</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>If clustered, the address of the node from which the bulletin originated.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>category</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The category of this bulletin.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>groupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The group id of the source component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>sourceId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the source component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>sourceName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the source component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>level</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The level of the bulletin.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>message</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bulletin message.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>timestamp</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>When this bulletin was generated.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": 0<span class="comma">,</span>
    "nodeAddress": "value"<span class="comma">,</span>
    "category": "value"<span class="comma">,</span>
    "groupId": "value"<span class="comma">,</span>
    "sourceId": "value"<span class="comma">,</span>
    "sourceName": "value"<span class="comma">,</span>
    "level": "value"<span class="comma">,</span>
    "message": "value"<span class="comma">,</span>
    "timestamp": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="BulletinEntity" class="type hidden">
    <h3>BulletinEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>groupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>sourceId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>timestamp</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>When this bulletin was generated.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>nodeAddress</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>canRead</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether the user can read a given resource.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bulletin</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">BulletinDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": 0<span class="comma">,</span>
    "groupId": "value"<span class="comma">,</span>
    "sourceId": "value"<span class="comma">,</span>
    "timestamp": "value"<span class="comma">,</span>
    "nodeAddress": "value"<span class="comma">,</span>
    "canRead": true<span class="comma">,</span>
    "bulletin": <span class="nested collapsed"><span class="nested-id hidden">BulletinDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="Bundle" class="type hidden">
    <h3>Bundle</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>group</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The group of the bundle
                        
                        </td>
                </tr>
            
                <tr>
                    <td>artifact</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The artifact of the bundle
                        
                        </td>
                </tr>
            
                <tr>
                    <td>version</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The version of the bundle
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "group": "value"<span class="comma">,</span>
    "artifact": "value"<span class="comma">,</span>
    "version": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="BundleDTO" class="type hidden">
    <h3>BundleDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>group</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The group of the bundle.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>artifact</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The artifact of the bundle.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>version</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The version of the bundle.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "group": "value"<span class="comma">,</span>
    "artifact": "value"<span class="comma">,</span>
    "version": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ClassLoaderDiagnosticsDTO" class="type hidden">
    <h3>ClassLoaderDiagnosticsDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>bundle</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">BundleDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Information about the Bundle that the ClassLoader belongs to, if any
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parentClassLoader</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ClassLoaderDiagnosticsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A ClassLoaderDiagnosticsDTO that provides information about the parent ClassLoader
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "bundle": <span class="nested collapsed"><span class="nested-id hidden">BundleDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "parentClassLoader": <span class="nested collapsed"><span class="nested-id hidden">ClassLoaderDiagnosticsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ClusteSummaryEntity" class="type hidden">
    <h3>ClusteSummaryEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>clusterSummary</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ClusterSummaryDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "clusterSummary": <span class="nested collapsed"><span class="nested-id hidden">ClusterSummaryDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ClusterDTO" class="type hidden">
    <h3>ClusterDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>nodes</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">NodeDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The collection of nodes that are part of the cluster.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>generated</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp the report was generated.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "nodes": [<span class="nested collapsed"><span class="nested-id hidden">NodeDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "generated": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ClusterEntity" class="type hidden">
    <h3>ClusterEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>cluster</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ClusterDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "cluster": <span class="nested collapsed"><span class="nested-id hidden">ClusterDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ClusterSearchResultsEntity" class="type hidden">
    <h3>ClusterSearchResultsEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>nodeResults</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">NodeSearchResultDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "nodeResults": [<span class="nested collapsed"><span class="nested-id hidden">NodeSearchResultDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ClusterSummaryDTO" class="type hidden">
    <h3>ClusterSummaryDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>connectedNodes</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>When clustered, reports the number of nodes connected vs the number of nodes in the cluster.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>connectedNodeCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of nodes that are currently connected to the cluster
                        
                        </td>
                </tr>
            
                <tr>
                    <td>totalNodeCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of nodes in the cluster, regardless of whether or not they are connected
                        
                        </td>
                </tr>
            
                <tr>
                    <td>connectedToCluster</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether this NiFi instance is connected to a cluster.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>clustered</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether this NiFi instance is clustered.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "connectedNodes": "value"<span class="comma">,</span>
    "connectedNodeCount": 0<span class="comma">,</span>
    "totalNodeCount": 0<span class="comma">,</span>
    "connectedToCluster": true<span class="comma">,</span>
    "clustered": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ComponentDetailsDTO" class="type hidden">
    <h3>ComponentDetailsDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ComponentDifferenceDTO" class="type hidden">
    <h3>ComponentDifferenceDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>componentType</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The type of component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>componentId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>componentName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>processGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the Process Group that the component belongs to
                        
                        </td>
                </tr>
            
                <tr>
                    <td>differences</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">DifferenceDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The differences in the component between the two flows
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "componentType": "value"<span class="comma">,</span>
    "componentId": "value"<span class="comma">,</span>
    "componentName": "value"<span class="comma">,</span>
    "processGroupId": "value"<span class="comma">,</span>
    "differences": [<span class="nested collapsed"><span class="nested-id hidden">DifferenceDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ComponentHistoryDTO" class="type hidden">
    <h3>ComponentHistoryDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>componentId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component id.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>propertyHistory</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The history for the properties of the component.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "componentId": "value"<span class="comma">,</span>
    "propertyHistory": <span class="open-object">&#123;
        "name": <span class="nested collapsed"><span class="nested-id hidden">PropertyHistoryDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>
    &#125;</span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ComponentHistoryEntity" class="type hidden">
    <h3>ComponentHistoryEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>componentHistory</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ComponentHistoryDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "componentHistory": <span class="nested collapsed"><span class="nested-id hidden">ComponentHistoryDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ComponentLifecycle" class="type hidden">
    <h3>ComponentLifecycle</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ComponentManifest" class="type hidden">
    <h3>ComponentManifest</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>apis</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">DefinedType</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Public interfaces defined in this bundle
                        
                        </td>
                </tr>
            
                <tr>
                    <td>controllerServices</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ControllerServiceDefinition</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Controller Services provided in this bundle
                        
                        </td>
                </tr>
            
                <tr>
                    <td>processors</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ProcessorDefinition</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Processors provided in this bundle
                        
                        </td>
                </tr>
            
                <tr>
                    <td>reportingTasks</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ReportingTaskDefinition</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Reporting Tasks provided in this bundle
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "apis": [<span class="nested collapsed"><span class="nested-id hidden">DefinedType</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "controllerServices": [<span class="nested collapsed"><span class="nested-id hidden">ControllerServiceDefinition</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "processors": [<span class="nested collapsed"><span class="nested-id hidden">ProcessorDefinition</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "reportingTasks": [<span class="nested collapsed"><span class="nested-id hidden">ReportingTaskDefinition</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ComponentReferenceDTO" class="type hidden">
    <h3>ComponentReferenceDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionedComponentId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the corresponding component that is under version control
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parentGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of parent process group of this component if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the component.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "versionedComponentId": "value"<span class="comma">,</span>
    "parentGroupId": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ComponentReferenceEntity" class="type hidden">
    <h3>ComponentReferenceEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for futures requests to the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bulletins</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BulletinEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bulletins for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parentGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of parent process group of this component if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>component</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ComponentReferenceDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "bulletins": [<span class="nested collapsed"><span class="nested-id hidden">BulletinEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "parentGroupId": "value"<span class="comma">,</span>
    "component": <span class="nested collapsed"><span class="nested-id hidden">ComponentReferenceDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ComponentRestrictionPermissionDTO" class="type hidden">
    <h3>ComponentRestrictionPermissionDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>requiredPermission</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RequiredPermissionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The required permission necessary for this restriction.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component restriction. Note: the read permission are not used and will always be false.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "requiredPermission": <span class="nested collapsed"><span class="nested-id hidden">RequiredPermissionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ComponentSearchResultDTO" class="type hidden">
    <h3>ComponentSearchResultDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component that matched the search.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>groupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The group id of the component that matched the search.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parentGroup</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">SearchResultGroupDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The parent group of the component that matched the search.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionedGroup</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">SearchResultGroupDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The nearest versioned ancestor group of the component that matched the search.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the component that matched the search.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>matches</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>What matched the search from the component.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "groupId": "value"<span class="comma">,</span>
    "parentGroup": <span class="nested collapsed"><span class="nested-id hidden">SearchResultGroupDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "versionedGroup": <span class="nested collapsed"><span class="nested-id hidden">SearchResultGroupDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "matches": ["value"]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ComponentStateDTO" class="type hidden">
    <h3>ComponentStateDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>componentId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component identifier.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>stateDescription</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Description of the state this component persists.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>clusterState</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">StateMapDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The cluster state for this component, or null if this NiFi is a standalone instance.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>localState</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">StateMapDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The local state for this component.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "componentId": "value"<span class="comma">,</span>
    "stateDescription": "value"<span class="comma">,</span>
    "clusterState": <span class="nested collapsed"><span class="nested-id hidden">StateMapDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "localState": <span class="nested collapsed"><span class="nested-id hidden">StateMapDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ComponentStateEntity" class="type hidden">
    <h3>ComponentStateEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>componentState</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ComponentStateDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component state.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "componentState": <span class="nested collapsed"><span class="nested-id hidden">ComponentStateDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ComponentValidationResultDTO" class="type hidden">
    <h3>ComponentValidationResultDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>processGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The UUID of the Process Group that this component is in
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The UUID of this component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>referenceType</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The type of this component
                         Allowable values: PROCESSOR, CONTROLLER_SERVICE, INPUT_PORT, OUTPUT_PORT, REMOTE_INPUT_PORT, REMOTE_OUTPUT_PORT
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>state</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The scheduled state of a processor or reporting task referencing a controller service. If this component is another controller service, this field represents the controller service state.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>activeThreadCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of active threads for the referencing component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>validationErrors</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The validation errors for the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>currentlyValid</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not the component is currently valid
                        
                        </td>
                </tr>
            
                <tr>
                    <td>resultsValid</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not the component will be valid if the Parameter Context is changed
                        
                        </td>
                </tr>
            
                <tr>
                    <td>resultantValidationErrors</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The validation errors that will apply to the component if the Parameter Context is changed
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "processGroupId": "value"<span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
    "referenceType": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "state": "value"<span class="comma">,</span>
    "activeThreadCount": 0<span class="comma">,</span>
    "validationErrors": ["value"]<span class="comma">,</span>
    "currentlyValid": true<span class="comma">,</span>
    "resultsValid": true<span class="comma">,</span>
    "resultantValidationErrors": ["value"]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ComponentValidationResultEntity" class="type hidden">
    <h3>ComponentValidationResultEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for futures requests to the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bulletins</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BulletinEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bulletins for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>component</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ComponentValidationResultDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "bulletins": [<span class="nested collapsed"><span class="nested-id hidden">BulletinEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "component": <span class="nested collapsed"><span class="nested-id hidden">ComponentValidationResultDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ComponentValidationResultsEntity" class="type hidden">
    <h3>ComponentValidationResultsEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>validationResults</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ComponentValidationResultEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A List of ComponentValidationResultEntity, one for each component that is validated
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "validationResults": [<span class="nested collapsed"><span class="nested-id hidden">ComponentValidationResultEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ConfigVerificationResultDTO" class="type hidden">
    <h3>ConfigVerificationResultDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>outcome</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The outcome of the verification
                         Allowable values: SUCCESSFUL, FAILED, SKIPPED
                        </td>
                </tr>
            
                <tr>
                    <td>verificationStepName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the verification step
                        
                        </td>
                </tr>
            
                <tr>
                    <td>explanation</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>An explanation of why the step was or was not successful
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "outcome": "value"<span class="comma">,</span>
    "verificationStepName": "value"<span class="comma">,</span>
    "explanation": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ConfigurationAnalysisDTO" class="type hidden">
    <h3>ConfigurationAnalysisDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>componentId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>properties</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The configured properties for the component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>referencedAttributes</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The attributes that are referenced by the properties, mapped to recently used values
                        
                        </td>
                </tr>
            
                <tr>
                    <td>supportsVerification</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not the component supports verification
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "componentId": "value"<span class="comma">,</span>
    "properties": <span class="open-object">&#123;
        "name": "value"
    &#125;</span><span class="comma">,</span>
    "referencedAttributes": <span class="open-object">&#123;
        "name": "value"
    &#125;</span><span class="comma">,</span>
    "supportsVerification": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ConfigurationAnalysisEntity" class="type hidden">
    <h3>ConfigurationAnalysisEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>configurationAnalysis</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ConfigurationAnalysisDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The configuration analysis
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "configurationAnalysis": <span class="nested collapsed"><span class="nested-id hidden">ConfigurationAnalysisDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ConnectableComponent" class="type hidden">
    <h3>ConnectableComponent</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>required</td>
                    <td>The id of the connectable component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>type</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>required</td>
                    <td>The type of component the connectable is.
                         Allowable values: PROCESSOR, REMOTE_INPUT_PORT, REMOTE_OUTPUT_PORT, INPUT_PORT, OUTPUT_PORT, FUNNEL
                        </td>
                </tr>
            
                <tr>
                    <td>groupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>required</td>
                    <td>The id of the group that the connectable component resides in
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the connectable component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>comments</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The comments for the connectable component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>instanceIdentifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The instance ID of an existing component that is described by this VersionedComponent, or null if this is not mapped to an instantiated component
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "type": "value"<span class="comma">,</span>
    "groupId": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "comments": "value"<span class="comma">,</span>
    "instanceIdentifier": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ConnectableDTO" class="type hidden">
    <h3>ConnectableDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>required</td>
                    <td>The id of the connectable component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionedComponentId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the corresponding component that is under version control
                        
                        </td>
                </tr>
            
                <tr>
                    <td>type</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>required</td>
                    <td>The type of component the connectable is.
                         Allowable values: PROCESSOR, REMOTE_INPUT_PORT, REMOTE_OUTPUT_PORT, INPUT_PORT, OUTPUT_PORT, FUNNEL
                        </td>
                </tr>
            
                <tr>
                    <td>groupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>required</td>
                    <td>The id of the group that the connectable component resides in
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the connectable component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>running</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Reflects the current state of the connectable component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>transmitting</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>If the connectable component represents a remote port, indicates if the target is configured to transmit.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>exists</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>If the connectable component represents a remote port, indicates if the target exists.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>comments</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The comments for the connectable component.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "versionedComponentId": "value"<span class="comma">,</span>
    "type": "value"<span class="comma">,</span>
    "groupId": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "running": true<span class="comma">,</span>
    "transmitting": true<span class="comma">,</span>
    "exists": true<span class="comma">,</span>
    "comments": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ConnectionDTO" class="type hidden">
    <h3>ConnectionDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionedComponentId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the corresponding component that is under version control
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parentGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of parent process group of this component if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>source</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ConnectableDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The source of the connection.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>destination</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ConnectableDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The destination of the connection.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the connection.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>labelIndex</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The index of the bend point where to place the connection label.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>getzIndex</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The z index of the connection.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>selectedRelationships</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The selected relationship that comprise the connection.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>availableRelationships</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The relationships that the source of the connection currently supports.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>backPressureObjectThreshold</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The object count threshold for determining when back pressure is applied. Updating this value is a passive change in the sense that it won't impact whether existing files over the limit are affected but it does help feeder processors to stop pushing too much into this work queue.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>backPressureDataSizeThreshold</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The object data size threshold for determining when back pressure is applied. Updating this value is a passive change in the sense that it won't impact whether existing files over the limit are affected but it does help feeder processors to stop pushing too much into this work queue.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowFileExpiration</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The amount of time a flow file may be in the flow before it will be automatically aged out of the flow. Once a flow file reaches this age it will be terminated from the flow the next time a processor attempts to start work on it.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>prioritizers</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The comparators used to prioritize the queue.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bends</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">PositionDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bend points on the connection.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>loadBalanceStrategy</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>How to load balance the data in this Connection across the nodes in the cluster.
                         Allowable values: DO_NOT_LOAD_BALANCE, PARTITION_BY_ATTRIBUTE, ROUND_ROBIN, SINGLE_NODE
                        </td>
                </tr>
            
                <tr>
                    <td>loadBalancePartitionAttribute</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The FlowFile Attribute to use for determining which node a FlowFile will go to if the Load Balancing Strategy is set to PARTITION_BY_ATTRIBUTE
                        
                        </td>
                </tr>
            
                <tr>
                    <td>loadBalanceCompression</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not data should be compressed when being transferred between nodes in the cluster.
                         Allowable values: DO_NOT_COMPRESS, COMPRESS_ATTRIBUTES_ONLY, COMPRESS_ATTRIBUTES_AND_CONTENT
                        </td>
                </tr>
            
                <tr>
                    <td>loadBalanceStatus</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The current status of the Connection's Load Balancing Activities. Status can indicate that Load Balancing is not configured for the connection, that Load Balancing is configured but inactive (not currently transferring data to another node), or that Load Balancing is configured and actively transferring data to another node.
                         Allowable values: LOAD_BALANCE_NOT_CONFIGURED, LOAD_BALANCE_INACTIVE, LOAD_BALANCE_ACTIVE
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "versionedComponentId": "value"<span class="comma">,</span>
    "parentGroupId": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "source": <span class="nested collapsed"><span class="nested-id hidden">ConnectableDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "destination": <span class="nested collapsed"><span class="nested-id hidden">ConnectableDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "labelIndex": 0<span class="comma">,</span>
    "getzIndex": 0<span class="comma">,</span>
    "selectedRelationships": ["value"]<span class="comma">,</span>
    "availableRelationships": ["value"]<span class="comma">,</span>
    "backPressureObjectThreshold": 0<span class="comma">,</span>
    "backPressureDataSizeThreshold": "value"<span class="comma">,</span>
    "flowFileExpiration": "value"<span class="comma">,</span>
    "prioritizers": ["value"]<span class="comma">,</span>
    "bends": [<span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "loadBalanceStrategy": "value"<span class="comma">,</span>
    "loadBalancePartitionAttribute": "value"<span class="comma">,</span>
    "loadBalanceCompression": "value"<span class="comma">,</span>
    "loadBalanceStatus": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ConnectionDiagnosticsDTO" class="type hidden">
    <h3>ConnectionDiagnosticsDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>connection</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ConnectionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Details about the connection
                        
                        </td>
                </tr>
            
                <tr>
                    <td>aggregateSnapshot</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ConnectionDiagnosticsSnapshotDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Aggregate values for all nodes in the cluster, or for this instance if not clustered
                        
                        </td>
                </tr>
            
                <tr>
                    <td>nodeSnapshots</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ConnectionDiagnosticsSnapshotDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A list of values for each node in the cluster, if clustered.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "connection": <span class="nested collapsed"><span class="nested-id hidden">ConnectionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "aggregateSnapshot": <span class="nested collapsed"><span class="nested-id hidden">ConnectionDiagnosticsSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "nodeSnapshots": [<span class="nested collapsed"><span class="nested-id hidden">ConnectionDiagnosticsSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ConnectionDiagnosticsSnapshotDTO" class="type hidden">
    <h3>ConnectionDiagnosticsSnapshotDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>totalFlowFileCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Total number of FlowFiles owned by the Connection
                        
                        </td>
                </tr>
            
                <tr>
                    <td>totalByteCount</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Total number of bytes that make up the content for the FlowFiles owned by this Connection
                        
                        </td>
                </tr>
            
                <tr>
                    <td>nodeIdentifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Node Identifier that this information pertains to
                        
                        </td>
                </tr>
            
                <tr>
                    <td>localQueuePartition</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">LocalQueuePartitionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The local queue partition, from which components can pull FlowFiles on this node.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>remoteQueuePartitions</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">RemoteQueuePartitionDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "totalFlowFileCount": 0<span class="comma">,</span>
    "totalByteCount": 0<span class="comma">,</span>
    "nodeIdentifier": "value"<span class="comma">,</span>
    "localQueuePartition": <span class="nested collapsed"><span class="nested-id hidden">LocalQueuePartitionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "remoteQueuePartitions": [<span class="nested collapsed"><span class="nested-id hidden">RemoteQueuePartitionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ConnectionEntity" class="type hidden">
    <h3>ConnectionEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for futures requests to the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bulletins</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BulletinEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bulletins for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>component</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ConnectionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>status</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ConnectionStatusDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The status of the connection.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bends</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">PositionDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bend points on the connection.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>labelIndex</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The index of the bend point where to place the connection label.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>getzIndex</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The z index of the connection.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>sourceId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The identifier of the source of this connection.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>sourceGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The identifier of the group of the source of this connection.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>sourceType</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>required</td>
                    <td>The type of component the source connectable is.
                         Allowable values: PROCESSOR, REMOTE_INPUT_PORT, REMOTE_OUTPUT_PORT, INPUT_PORT, OUTPUT_PORT, FUNNEL
                        </td>
                </tr>
            
                <tr>
                    <td>destinationId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The identifier of the destination of this connection.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>destinationGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The identifier of the group of the destination of this connection.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>destinationType</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>required</td>
                    <td>The type of component the destination connectable is.
                         Allowable values: PROCESSOR, REMOTE_INPUT_PORT, REMOTE_OUTPUT_PORT, INPUT_PORT, OUTPUT_PORT, FUNNEL
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "bulletins": [<span class="nested collapsed"><span class="nested-id hidden">BulletinEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "component": <span class="nested collapsed"><span class="nested-id hidden">ConnectionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "status": <span class="nested collapsed"><span class="nested-id hidden">ConnectionStatusDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "bends": [<span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "labelIndex": 0<span class="comma">,</span>
    "getzIndex": 0<span class="comma">,</span>
    "sourceId": "value"<span class="comma">,</span>
    "sourceGroupId": "value"<span class="comma">,</span>
    "sourceType": "value"<span class="comma">,</span>
    "destinationId": "value"<span class="comma">,</span>
    "destinationGroupId": "value"<span class="comma">,</span>
    "destinationType": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ConnectionStatisticsDTO" class="type hidden">
    <h3>ConnectionStatisticsDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the connection
                        
                        </td>
                </tr>
            
                <tr>
                    <td>statsLastRefreshed</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp of when the stats were last refreshed
                        
                        </td>
                </tr>
            
                <tr>
                    <td>aggregateSnapshot</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ConnectionStatisticsSnapshotDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The status snapshot that represents the aggregate stats of the cluster
                        
                        </td>
                </tr>
            
                <tr>
                    <td>nodeSnapshots</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">NodeConnectionStatisticsSnapshotDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A list of status snapshots for each node
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "statsLastRefreshed": "value"<span class="comma">,</span>
    "aggregateSnapshot": <span class="nested collapsed"><span class="nested-id hidden">ConnectionStatisticsSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "nodeSnapshots": [<span class="nested collapsed"><span class="nested-id hidden">NodeConnectionStatisticsSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ConnectionStatisticsEntity" class="type hidden">
    <h3>ConnectionStatisticsEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>connectionStatistics</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ConnectionStatisticsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>canRead</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether the user can read a given resource.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "connectionStatistics": <span class="nested collapsed"><span class="nested-id hidden">ConnectionStatisticsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "canRead": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ConnectionStatisticsSnapshotDTO" class="type hidden">
    <h3>ConnectionStatisticsSnapshotDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the connection.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>predictedMillisUntilCountBackpressure</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The predicted number of milliseconds before the connection will have backpressure applied, based on the queued count.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>predictedMillisUntilBytesBackpressure</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The predicted number of milliseconds before the connection will have backpressure applied, based on the total number of bytes in the queue.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>predictedCountAtNextInterval</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The predicted number of queued objects at the next configured interval.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>predictedBytesAtNextInterval</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The predicted total number of bytes in the queue at the next configured interval.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>predictedPercentCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The predicted percentage of queued objects at the next configured interval.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>predictedPercentBytes</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The predicted percentage of bytes in the queue against current threshold at the next configured interval.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>predictionIntervalMillis</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The prediction interval in seconds
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "predictedMillisUntilCountBackpressure": 0<span class="comma">,</span>
    "predictedMillisUntilBytesBackpressure": 0<span class="comma">,</span>
    "predictedCountAtNextInterval": 0<span class="comma">,</span>
    "predictedBytesAtNextInterval": 0<span class="comma">,</span>
    "predictedPercentCount": 0<span class="comma">,</span>
    "predictedPercentBytes": 0<span class="comma">,</span>
    "predictionIntervalMillis": 0<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ConnectionStatusDTO" class="type hidden">
    <h3>ConnectionStatusDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the connection
                        
                        </td>
                </tr>
            
                <tr>
                    <td>groupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the Process Group that the connection belongs to
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the connection
                        
                        </td>
                </tr>
            
                <tr>
                    <td>statsLastRefreshed</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp of when the stats were last refreshed
                        
                        </td>
                </tr>
            
                <tr>
                    <td>sourceId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the source component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>sourceName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the source component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>destinationId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the destination component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>destinationName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the destination component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>aggregateSnapshot</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ConnectionStatusSnapshotDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The status snapshot that represents the aggregate stats of the cluster
                        
                        </td>
                </tr>
            
                <tr>
                    <td>nodeSnapshots</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">NodeConnectionStatusSnapshotDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A list of status snapshots for each node
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "groupId": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "statsLastRefreshed": "value"<span class="comma">,</span>
    "sourceId": "value"<span class="comma">,</span>
    "sourceName": "value"<span class="comma">,</span>
    "destinationId": "value"<span class="comma">,</span>
    "destinationName": "value"<span class="comma">,</span>
    "aggregateSnapshot": <span class="nested collapsed"><span class="nested-id hidden">ConnectionStatusSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "nodeSnapshots": [<span class="nested collapsed"><span class="nested-id hidden">NodeConnectionStatusSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ConnectionStatusEntity" class="type hidden">
    <h3>ConnectionStatusEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>connectionStatus</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ConnectionStatusDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>canRead</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether the user can read a given resource.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "connectionStatus": <span class="nested collapsed"><span class="nested-id hidden">ConnectionStatusDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "canRead": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ConnectionStatusPredictionsSnapshotDTO" class="type hidden">
    <h3>ConnectionStatusPredictionsSnapshotDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>predictedMillisUntilCountBackpressure</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The predicted number of milliseconds before the connection will have backpressure applied, based on the queued count.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>predictedMillisUntilBytesBackpressure</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The predicted number of milliseconds before the connection will have backpressure applied, based on the total number of bytes in the queue.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>predictionIntervalSeconds</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The configured interval (in seconds) for predicting connection queue count and size (and percent usage).
                        
                        </td>
                </tr>
            
                <tr>
                    <td>predictedCountAtNextInterval</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The predicted number of queued objects at the next configured interval.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>predictedBytesAtNextInterval</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The predicted total number of bytes in the queue at the next configured interval.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>predictedPercentCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Predicted connection percent use regarding queued flow files count and backpressure threshold if configured.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>predictedPercentBytes</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Predicted connection percent use regarding queued flow files size and backpressure threshold if configured.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "predictedMillisUntilCountBackpressure": 0<span class="comma">,</span>
    "predictedMillisUntilBytesBackpressure": 0<span class="comma">,</span>
    "predictionIntervalSeconds": 0<span class="comma">,</span>
    "predictedCountAtNextInterval": 0<span class="comma">,</span>
    "predictedBytesAtNextInterval": 0<span class="comma">,</span>
    "predictedPercentCount": 0<span class="comma">,</span>
    "predictedPercentBytes": 0<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ConnectionStatusSnapshotDTO" class="type hidden">
    <h3>ConnectionStatusSnapshotDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the connection.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>groupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the process group the connection belongs to.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the connection.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>sourceId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the source of the connection.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>sourceName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the source of the connection.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>destinationId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the destination of the connection.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>destinationName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the destination of the connection.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>predictions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ConnectionStatusPredictionsSnapshotDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Predictions, if available, for this connection (null if not available)
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowFilesIn</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of FlowFiles that have come into the connection in the last 5 minutes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bytesIn</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The size of the FlowFiles that have come into the connection in the last 5 minutes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>input</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The input count/size for the connection in the last 5 minutes, pretty printed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowFilesOut</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of FlowFiles that have left the connection in the last 5 minutes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bytesOut</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of bytes that have left the connection in the last 5 minutes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>output</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The output count/sie for the connection in the last 5 minutes, pretty printed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowFilesQueued</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of FlowFiles that are currently queued in the connection.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bytesQueued</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The size of the FlowFiles that are currently queued in the connection.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>queued</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The total count and size of queued flowfiles formatted.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>queuedSize</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The total size of flowfiles that are queued formatted.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>queuedCount</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of flowfiles that are queued, pretty printed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>percentUseCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Connection percent use regarding queued flow files count and backpressure threshold if configured.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>percentUseBytes</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Connection percent use regarding queued flow files size and backpressure threshold if configured.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowFileAvailability</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The availability of FlowFiles in this connection
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "groupId": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "sourceId": "value"<span class="comma">,</span>
    "sourceName": "value"<span class="comma">,</span>
    "destinationId": "value"<span class="comma">,</span>
    "destinationName": "value"<span class="comma">,</span>
    "predictions": <span class="nested collapsed"><span class="nested-id hidden">ConnectionStatusPredictionsSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "flowFilesIn": 0<span class="comma">,</span>
    "bytesIn": 0<span class="comma">,</span>
    "input": "value"<span class="comma">,</span>
    "flowFilesOut": 0<span class="comma">,</span>
    "bytesOut": 0<span class="comma">,</span>
    "output": "value"<span class="comma">,</span>
    "flowFilesQueued": 0<span class="comma">,</span>
    "bytesQueued": 0<span class="comma">,</span>
    "queued": "value"<span class="comma">,</span>
    "queuedSize": "value"<span class="comma">,</span>
    "queuedCount": "value"<span class="comma">,</span>
    "percentUseCount": 0<span class="comma">,</span>
    "percentUseBytes": 0<span class="comma">,</span>
    "flowFileAvailability": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ConnectionStatusSnapshotEntity" class="type hidden">
    <h3>ConnectionStatusSnapshotEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the connection.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>connectionStatusSnapshot</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ConnectionStatusSnapshotDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>canRead</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether the user can read a given resource.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "connectionStatusSnapshot": <span class="nested collapsed"><span class="nested-id hidden">ConnectionStatusSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "canRead": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ConnectionsEntity" class="type hidden">
    <h3>ConnectionsEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>connections</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ConnectionEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "connections": [<span class="nested collapsed"><span class="nested-id hidden">ConnectionEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ControllerBulletinsEntity" class="type hidden">
    <h3>ControllerBulletinsEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>bulletins</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BulletinEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>System level bulletins to be reported to the user.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>controllerServiceBulletins</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BulletinEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Controller service bulletins to be reported to the user.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>reportingTaskBulletins</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BulletinEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Reporting task bulletins to be reported to the user.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parameterProviderBulletins</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BulletinEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Parameter provider bulletins to be reported to the user.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowRegistryClientBulletins</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BulletinEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Flow registry client bulletins to be reported to the user.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "bulletins": [<span class="nested collapsed"><span class="nested-id hidden">BulletinEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "controllerServiceBulletins": [<span class="nested collapsed"><span class="nested-id hidden">BulletinEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "reportingTaskBulletins": [<span class="nested collapsed"><span class="nested-id hidden">BulletinEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "parameterProviderBulletins": [<span class="nested collapsed"><span class="nested-id hidden">BulletinEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "flowRegistryClientBulletins": [<span class="nested collapsed"><span class="nested-id hidden">BulletinEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ControllerConfigurationDTO" class="type hidden">
    <h3>ControllerConfigurationDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>maxTimerDrivenThreadCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The maximum number of timer driven threads the NiFi has available.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>maxEventDrivenThreadCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The maximum number of event driven threads the NiFi has available.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "maxTimerDrivenThreadCount": 0<span class="comma">,</span>
    "maxEventDrivenThreadCount": 0<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ControllerConfigurationEntity" class="type hidden">
    <h3>ControllerConfigurationEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>component</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ControllerConfigurationDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The controller configuration.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "component": <span class="nested collapsed"><span class="nested-id hidden">ControllerConfigurationDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ControllerDTO" class="type hidden">
    <h3>ControllerDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the NiFi.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the NiFi.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>comments</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The comments for the NiFi.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>runningCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of running components in the NiFi.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>stoppedCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of stopped components in the NiFi.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>invalidCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of invalid components in the NiFi.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disabledCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of disabled components in the NiFi.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>activeRemotePortCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of active remote ports contained in the NiFi.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inactiveRemotePortCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of inactive remote ports contained in the NiFi.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inputPortCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of input ports contained in the NiFi.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>outputPortCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of output ports in the NiFi.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>remoteSiteListeningPort</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Socket Port on which this instance is listening for Remote Transfers of Flow Files. If this instance is not configured to receive Flow Files from remote instances, this will be null.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>remoteSiteHttpListeningPort</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The HTTP(S) Port on which this instance is listening for Remote Transfers of Flow Files. If this instance is not configured to receive Flow Files from remote instances, this will be null.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>siteToSiteSecure</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether or not Site-to-Site communications with this instance is secure (2-way authentication).
                        
                        </td>
                </tr>
            
                <tr>
                    <td>instanceId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>If clustered, the id of the Cluster Manager, otherwise the id of the NiFi.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inputPorts</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">PortDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The input ports available to send data to for the NiFi.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>outputPorts</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">PortDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The output ports available to received data from the NiFi.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "comments": "value"<span class="comma">,</span>
    "runningCount": 0<span class="comma">,</span>
    "stoppedCount": 0<span class="comma">,</span>
    "invalidCount": 0<span class="comma">,</span>
    "disabledCount": 0<span class="comma">,</span>
    "activeRemotePortCount": 0<span class="comma">,</span>
    "inactiveRemotePortCount": 0<span class="comma">,</span>
    "inputPortCount": 0<span class="comma">,</span>
    "outputPortCount": 0<span class="comma">,</span>
    "remoteSiteListeningPort": 0<span class="comma">,</span>
    "remoteSiteHttpListeningPort": 0<span class="comma">,</span>
    "siteToSiteSecure": true<span class="comma">,</span>
    "instanceId": "value"<span class="comma">,</span>
    "inputPorts": [<span class="nested collapsed"><span class="nested-id hidden">PortDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "outputPorts": [<span class="nested collapsed"><span class="nested-id hidden">PortDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ControllerEntity" class="type hidden">
    <h3>ControllerEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>controller</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ControllerDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "controller": <span class="nested collapsed"><span class="nested-id hidden">ControllerDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ControllerServiceAPI" class="type hidden">
    <h3>ControllerServiceAPI</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>type</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The fully qualified name of the service interface.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bundle</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">Bundle</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The details of the artifact that bundled this service interface.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "type": "value"<span class="comma">,</span>
    "bundle": <span class="nested collapsed"><span class="nested-id hidden">Bundle</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ControllerServiceApiDTO" class="type hidden">
    <h3>ControllerServiceApiDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>type</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The fully qualified name of the service interface.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bundle</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">BundleDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The details of the artifact that bundled this service interface.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "type": "value"<span class="comma">,</span>
    "bundle": <span class="nested collapsed"><span class="nested-id hidden">BundleDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ControllerServiceDTO" class="type hidden">
    <h3>ControllerServiceDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionedComponentId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the corresponding component that is under version control
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parentGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of parent process group of this component if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the controller service.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>type</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The type of the controller service.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bundle</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">BundleDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The details of the artifact that bundled this processor type.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>controllerServiceApis</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ControllerServiceApiDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Lists the APIs this Controller Service implements.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>comments</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The comments for the controller service.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>state</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The state of the controller service.
                         Allowable values: ENABLED, ENABLING, DISABLED, DISABLING
                        </td>
                </tr>
            
                <tr>
                    <td>persistsState</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the controller service persists state.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>restricted</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the controller service requires elevated privileges.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>deprecated</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the ontroller service has been deprecated.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>multipleVersionsAvailable</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the controller service has multiple versions available.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>supportsSensitiveDynamicProperties</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the controller service supports sensitive dynamic properties.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>properties</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The properties of the controller service.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>descriptors</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The descriptors for the controller service properties.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>sensitiveDynamicPropertyNames</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Set of sensitive dynamic property names
                        
                        </td>
                </tr>
            
                <tr>
                    <td>customUiUrl</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URL for the controller services custom configuration UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>annotationData</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The annotation for the controller service. This is how the custom UI relays configuration to the controller service.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>referencingComponents</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ControllerServiceReferencingComponentEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>All components referencing this controller service.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>validationErrors</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The validation errors from the controller service. These validation errors represent the problems with the controller service that must be resolved before it can be enabled.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>validationStatus</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether the ControllerService is valid, invalid, or still in the process of validating (i.e., it is unknown whether or not the ControllerService is valid)
                         Allowable values: VALID, INVALID, VALIDATING
                        </td>
                </tr>
            
                <tr>
                    <td>bulletinLevel</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The level at which the controller service will report bulletins.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>extensionMissing</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the underlying extension is missing.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "versionedComponentId": "value"<span class="comma">,</span>
    "parentGroupId": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "type": "value"<span class="comma">,</span>
    "bundle": <span class="nested collapsed"><span class="nested-id hidden">BundleDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "controllerServiceApis": [<span class="nested collapsed"><span class="nested-id hidden">ControllerServiceApiDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "comments": "value"<span class="comma">,</span>
    "state": "value"<span class="comma">,</span>
    "persistsState": true<span class="comma">,</span>
    "restricted": true<span class="comma">,</span>
    "deprecated": true<span class="comma">,</span>
    "multipleVersionsAvailable": true<span class="comma">,</span>
    "supportsSensitiveDynamicProperties": true<span class="comma">,</span>
    "properties": <span class="open-object">&#123;
        "name": "value"
    &#125;</span><span class="comma">,</span>
    "descriptors": <span class="open-object">&#123;
        "name": <span class="nested collapsed"><span class="nested-id hidden">PropertyDescriptorDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>
    &#125;</span><span class="comma">,</span>
    "sensitiveDynamicPropertyNames": ["value"]<span class="comma">,</span>
    "customUiUrl": "value"<span class="comma">,</span>
    "annotationData": "value"<span class="comma">,</span>
    "referencingComponents": [<span class="nested collapsed"><span class="nested-id hidden">ControllerServiceReferencingComponentEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "validationErrors": ["value"]<span class="comma">,</span>
    "validationStatus": "value"<span class="comma">,</span>
    "bulletinLevel": "value"<span class="comma">,</span>
    "extensionMissing": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ControllerServiceDefinition" class="type hidden">
    <h3>ControllerServiceDefinition</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>group</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The group name of the bundle that provides the referenced type.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>artifact</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The artifact name of the bundle that provides the referenced type.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>version</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The version of the bundle that provides the referenced type.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>type</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>required</td>
                    <td>The fully-qualified class type
                        
                        </td>
                </tr>
            
                <tr>
                    <td>typeDescription</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The description of the type.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>buildInfo</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">BuildInfo</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The build metadata for this component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>providedApiImplementations</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">DefinedType</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>If this type represents a provider for an interface, this lists the APIs it implements
                        
                        </td>
                </tr>
            
                <tr>
                    <td>tags</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The tags associated with this type
                        
                        </td>
                </tr>
            
                <tr>
                    <td>deprecated</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not the component has been deprecated
                        
                        </td>
                </tr>
            
                <tr>
                    <td>deprecationReason</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>If this component has been deprecated, this optional field can be used to provide an explanation
                        
                        </td>
                </tr>
            
                <tr>
                    <td>restricted</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not the component has a general restriction
                        
                        </td>
                </tr>
            
                <tr>
                    <td>restrictedExplanation</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>An optional description of the general restriction
                        
                        </td>
                </tr>
            
                <tr>
                    <td>explicitRestrictions</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">Restriction</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Explicit restrictions that indicate a require permission to use the component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>stateful</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">Stateful</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>propertyDescriptors</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Descriptions of configuration properties applicable to this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>supportsDynamicProperties</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not this component makes use of dynamic (user-set) properties.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "group": "value"<span class="comma">,</span>
    "artifact": "value"<span class="comma">,</span>
    "version": "value"<span class="comma">,</span>
    "type": "value"<span class="comma">,</span>
    "typeDescription": "value"<span class="comma">,</span>
    "buildInfo": <span class="nested collapsed"><span class="nested-id hidden">BuildInfo</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "providedApiImplementations": [<span class="nested collapsed"><span class="nested-id hidden">DefinedType</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "tags": ["value"]<span class="comma">,</span>
    "deprecated": true<span class="comma">,</span>
    "deprecationReason": "value"<span class="comma">,</span>
    "restricted": true<span class="comma">,</span>
    "restrictedExplanation": "value"<span class="comma">,</span>
    "explicitRestrictions": [<span class="nested collapsed"><span class="nested-id hidden">Restriction</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "stateful": <span class="nested collapsed"><span class="nested-id hidden">Stateful</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "propertyDescriptors": <span class="open-object">&#123;
        "name": <span class="nested collapsed"><span class="nested-id hidden">PropertyDescriptor</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>
    &#125;</span><span class="comma">,</span>
    "supportsDynamicProperties": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ControllerServiceDiagnosticsDTO" class="type hidden">
    <h3>ControllerServiceDiagnosticsDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>controllerService</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ControllerServiceEntity</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Controller Service
                        
                        </td>
                </tr>
            
                <tr>
                    <td>classLoaderDiagnostics</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ClassLoaderDiagnosticsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Information about the Controller Service's Class Loader
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "controllerService": <span class="nested collapsed"><span class="nested-id hidden">ControllerServiceEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "classLoaderDiagnostics": <span class="nested collapsed"><span class="nested-id hidden">ClassLoaderDiagnosticsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ControllerServiceEntity" class="type hidden">
    <h3>ControllerServiceEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for futures requests to the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bulletins</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BulletinEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bulletins for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parentGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of parent process group of this ControllerService.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>component</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ControllerServiceDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>operatePermissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component operations.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>status</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ControllerServiceStatusDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The status for this ControllerService.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "bulletins": [<span class="nested collapsed"><span class="nested-id hidden">BulletinEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "parentGroupId": "value"<span class="comma">,</span>
    "component": <span class="nested collapsed"><span class="nested-id hidden">ControllerServiceDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "operatePermissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "status": <span class="nested collapsed"><span class="nested-id hidden">ControllerServiceStatusDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ControllerServiceReferencingComponentDTO" class="type hidden">
    <h3>ControllerServiceReferencingComponentDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>groupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The group id for the component referencing a controller service. If this component is another controller service or a reporting task, this field is blank.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component referencing a controller service.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the component referencing a controller service.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>type</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The type of the component referencing a controller service in simple Java class name format without package name.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>state</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The scheduled state of a processor or reporting task referencing a controller service. If this component is another controller service, this field represents the controller service state.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>properties</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The properties for the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>descriptors</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The descriptors for the component properties.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>validationErrors</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The validation errors for the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>referenceType</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The type of reference this is.
                         Allowable values: Processor, ControllerService, ReportingTask
                        </td>
                </tr>
            
                <tr>
                    <td>activeThreadCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of active threads for the referencing component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>referenceCycle</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>If the referencing component represents a controller service, this indicates whether it has already been represented in this hierarchy.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>referencingComponents</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ControllerServiceReferencingComponentEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>If the referencing component represents a controller service, these are the components that reference it.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "groupId": "value"<span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "type": "value"<span class="comma">,</span>
    "state": "value"<span class="comma">,</span>
    "properties": <span class="open-object">&#123;
        "name": "value"
    &#125;</span><span class="comma">,</span>
    "descriptors": <span class="open-object">&#123;
        "name": <span class="nested collapsed"><span class="nested-id hidden">PropertyDescriptorDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>
    &#125;</span><span class="comma">,</span>
    "validationErrors": ["value"]<span class="comma">,</span>
    "referenceType": "value"<span class="comma">,</span>
    "activeThreadCount": 0<span class="comma">,</span>
    "referenceCycle": true<span class="comma">,</span>
    "referencingComponents": [<span class="nested collapsed"><span class="nested-id hidden">ControllerServiceReferencingComponentEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ControllerServiceReferencingComponentEntity" class="type hidden">
    <h3>ControllerServiceReferencingComponentEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for futures requests to the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bulletins</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BulletinEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bulletins for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>component</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ControllerServiceReferencingComponentDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>operatePermissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component operations.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "bulletins": [<span class="nested collapsed"><span class="nested-id hidden">BulletinEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "component": <span class="nested collapsed"><span class="nested-id hidden">ControllerServiceReferencingComponentDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "operatePermissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ControllerServiceReferencingComponentsEntity" class="type hidden">
    <h3>ControllerServiceReferencingComponentsEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>controllerServiceReferencingComponents</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ControllerServiceReferencingComponentEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "controllerServiceReferencingComponents": [<span class="nested collapsed"><span class="nested-id hidden">ControllerServiceReferencingComponentEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ControllerServiceRunStatusEntity" class="type hidden">
    <h3>ControllerServiceRunStatusEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>state</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The run status of the ControllerService.
                         Allowable values: ENABLED, DISABLED
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uiOnly</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether or not responses should only include fields necessary for rendering the NiFi User Interface. As such, when this value is set to true, some fields may be returned as null values, and the selected fields may change at any time without notice. As a result, this value should not be set to true by any client other than the UI.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "state": "value"<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "uiOnly": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ControllerServiceStatusDTO" class="type hidden">
    <h3>ControllerServiceStatusDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>runStatus</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The run status of this ControllerService
                         Allowable values: ENABLED, ENABLING, DISABLED, DISABLING
                        </td>
                </tr>
            
                <tr>
                    <td>validationStatus</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether the component is valid, invalid, or still in the process of validating (i.e., it is unknown whether or not the component is valid)
                         Allowable values: VALID, INVALID, VALIDATING
                        </td>
                </tr>
            
                <tr>
                    <td>activeThreadCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of active threads for the component.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "runStatus": "value"<span class="comma">,</span>
    "validationStatus": "value"<span class="comma">,</span>
    "activeThreadCount": 0<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ControllerServiceTypesEntity" class="type hidden">
    <h3>ControllerServiceTypesEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>controllerServiceTypes</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">DocumentedTypeDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "controllerServiceTypes": [<span class="nested collapsed"><span class="nested-id hidden">DocumentedTypeDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ControllerServicesEntity" class="type hidden">
    <h3>ControllerServicesEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>currentTime</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The current time on the system.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>controllerServices</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ControllerServiceEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "currentTime": "value"<span class="comma">,</span>
    "controllerServices": [<span class="nested collapsed"><span class="nested-id hidden">ControllerServiceEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ControllerStatusDTO" class="type hidden">
    <h3>ControllerStatusDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>activeThreadCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of active threads in the NiFi.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>terminatedThreadCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of terminated threads in the NiFi.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>queued</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of flowfiles queued in the NiFi.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowFilesQueued</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of FlowFiles queued across the entire flow
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bytesQueued</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The size of the FlowFiles queued across the entire flow
                        
                        </td>
                </tr>
            
                <tr>
                    <td>runningCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of running components in the NiFi.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>stoppedCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of stopped components in the NiFi.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>invalidCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of invalid components in the NiFi.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disabledCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of disabled components in the NiFi.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>activeRemotePortCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of active remote ports in the NiFi.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inactiveRemotePortCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of inactive remote ports in the NiFi.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>upToDateCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of up to date versioned process groups in the NiFi.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>locallyModifiedCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of locally modified versioned process groups in the NiFi.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>staleCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of stale versioned process groups in the NiFi.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>locallyModifiedAndStaleCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of locally modified and stale versioned process groups in the NiFi.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>syncFailureCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of versioned process groups in the NiFi that are unable to sync to a registry.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "activeThreadCount": 0<span class="comma">,</span>
    "terminatedThreadCount": 0<span class="comma">,</span>
    "queued": "value"<span class="comma">,</span>
    "flowFilesQueued": 0<span class="comma">,</span>
    "bytesQueued": 0<span class="comma">,</span>
    "runningCount": 0<span class="comma">,</span>
    "stoppedCount": 0<span class="comma">,</span>
    "invalidCount": 0<span class="comma">,</span>
    "disabledCount": 0<span class="comma">,</span>
    "activeRemotePortCount": 0<span class="comma">,</span>
    "inactiveRemotePortCount": 0<span class="comma">,</span>
    "upToDateCount": 0<span class="comma">,</span>
    "locallyModifiedCount": 0<span class="comma">,</span>
    "staleCount": 0<span class="comma">,</span>
    "locallyModifiedAndStaleCount": 0<span class="comma">,</span>
    "syncFailureCount": 0<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ControllerStatusEntity" class="type hidden">
    <h3>ControllerStatusEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>controllerStatus</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ControllerStatusDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "controllerStatus": <span class="nested collapsed"><span class="nested-id hidden">ControllerStatusDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="CopySnippetRequestEntity" class="type hidden">
    <h3>CopySnippetRequestEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>snippetId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The identifier of the snippet.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>originX</td>
                    <td>
                        
                            
                            
                                number (double)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The x coordinate of the origin of the bounding box where the new components will be placed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>originY</td>
                    <td>
                        
                            
                            
                                number (double)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The y coordinate of the origin of the bounding box where the new components will be placed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "snippetId": "value"<span class="comma">,</span>
    "originX": 0.0<span class="comma">,</span>
    "originY": 0.0<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="CounterDTO" class="type hidden">
    <h3>CounterDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the counter.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>context</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The context of the counter.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the counter.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>valueCount</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The value count.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>value</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The value of the counter.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "context": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "valueCount": 0<span class="comma">,</span>
    "value": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="CounterEntity" class="type hidden">
    <h3>CounterEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>counter</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">CounterDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "counter": <span class="nested collapsed"><span class="nested-id hidden">CounterDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="CountersDTO" class="type hidden">
    <h3>CountersDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>aggregateSnapshot</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">CountersSnapshotDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A Counters snapshot that represents the aggregate values of all nodes in the cluster. If the NiFi instance is a standalone instance, rather than a cluster, this represents the stats of the single instance.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>nodeSnapshots</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">NodeCountersSnapshotDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A Counters snapshot for each node in the cluster. If the NiFi instance is a standalone instance, rather than a cluster, this may be null.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "aggregateSnapshot": <span class="nested collapsed"><span class="nested-id hidden">CountersSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "nodeSnapshots": [<span class="nested collapsed"><span class="nested-id hidden">NodeCountersSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="CountersEntity" class="type hidden">
    <h3>CountersEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>counters</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">CountersDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "counters": <span class="nested collapsed"><span class="nested-id hidden">CountersDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="CountersSnapshotDTO" class="type hidden">
    <h3>CountersSnapshotDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>generated</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp when the report was generated.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>counters</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">CounterDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>All counters in the NiFi.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "generated": "value"<span class="comma">,</span>
    "counters": [<span class="nested collapsed"><span class="nested-id hidden">CounterDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="CreateActiveRequestEntity" class="type hidden">
    <h3>CreateActiveRequestEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>processGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Process Group ID that this active request will update
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "processGroupId": "value"<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="CreateTemplateRequestEntity" class="type hidden">
    <h3>CreateTemplateRequestEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the template.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>description</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The description of the template.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>snippetId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The identifier of the snippet.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "name": "value"<span class="comma">,</span>
    "description": "value"<span class="comma">,</span>
    "snippetId": "value"<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="CurrentUserEntity" class="type hidden">
    <h3>CurrentUserEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>identity</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The user identity being serialized.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>anonymous</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the current user is anonymous.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>provenancePermissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Permissions for querying provenance.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>countersPermissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Permissions for accessing counters.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>tenantsPermissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Permissions for accessing tenants.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>controllerPermissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Permissions for accessing the controller.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>policiesPermissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Permissions for accessing the policies.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>systemPermissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Permissions for accessing system.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parameterContextPermissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Permissions for accessing parameter contexts.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>restrictedComponentsPermissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Permissions for accessing restricted components. Note: the read permission are not used and will always be false.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>componentRestrictionPermissions</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ComponentRestrictionPermissionDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Permissions for specific component restrictions.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>canVersionFlows</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the current user can version flows.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "identity": "value"<span class="comma">,</span>
    "anonymous": true<span class="comma">,</span>
    "provenancePermissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "countersPermissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "tenantsPermissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "controllerPermissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "policiesPermissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "systemPermissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "parameterContextPermissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "restrictedComponentsPermissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "componentRestrictionPermissions": [<span class="nested collapsed"><span class="nested-id hidden">ComponentRestrictionPermissionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "canVersionFlows": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="DefinedType" class="type hidden">
    <h3>DefinedType</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>group</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The group name of the bundle that provides the referenced type.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>artifact</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The artifact name of the bundle that provides the referenced type.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>version</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The version of the bundle that provides the referenced type.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>type</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>required</td>
                    <td>The fully-qualified class type
                        
                        </td>
                </tr>
            
                <tr>
                    <td>typeDescription</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The description of the type.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "group": "value"<span class="comma">,</span>
    "artifact": "value"<span class="comma">,</span>
    "version": "value"<span class="comma">,</span>
    "type": "value"<span class="comma">,</span>
    "typeDescription": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="DifferenceDTO" class="type hidden">
    <h3>DifferenceDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>differenceType</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The type of difference
                        
                        </td>
                </tr>
            
                <tr>
                    <td>difference</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Description of the difference
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "differenceType": "value"<span class="comma">,</span>
    "difference": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="DimensionsDTO" class="type hidden">
    <h3>DimensionsDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>width</td>
                    <td>
                        
                            
                            
                                number (double)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The width of the label in pixels when at a 1:1 scale.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>height</td>
                    <td>
                        
                            
                            
                                number (double)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The height of the label in pixels when at a 1:1 scale.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "width": 0.0<span class="comma">,</span>
    "height": 0.0<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="DocumentedTypeDTO" class="type hidden">
    <h3>DocumentedTypeDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>type</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The fully qualified name of the type.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bundle</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">BundleDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The details of the artifact that bundled this type.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>controllerServiceApis</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ControllerServiceApiDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>If this type represents a ControllerService, this lists the APIs it implements.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>description</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The description of the type.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>restricted</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether this type is restricted.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>usageRestriction</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The optional description of why the usage of this component is restricted.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>explicitRestrictions</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ExplicitRestrictionDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>An optional collection of explicit restrictions. If specified, these explicit restrictions will be enfored.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>deprecationReason</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The description of why the usage of this component is restricted.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>tags</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The tags associated with this type.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "type": "value"<span class="comma">,</span>
    "bundle": <span class="nested collapsed"><span class="nested-id hidden">BundleDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "controllerServiceApis": [<span class="nested collapsed"><span class="nested-id hidden">ControllerServiceApiDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "description": "value"<span class="comma">,</span>
    "restricted": true<span class="comma">,</span>
    "usageRestriction": "value"<span class="comma">,</span>
    "explicitRestrictions": [<span class="nested collapsed"><span class="nested-id hidden">ExplicitRestrictionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "deprecationReason": "value"<span class="comma">,</span>
    "tags": ["value"]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="DropRequestDTO" class="type hidden">
    <h3>DropRequestDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id for this drop request.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for future requests to this drop request.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>submissionTime</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp when the query was submitted.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>lastUpdated</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The last time this drop request was updated.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>percentCompleted</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The current percent complete.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>finished</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the query has finished.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>failureReason</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The reason, if any, that this drop request failed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>currentCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of flow files currently queued.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>currentSize</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The size of flow files currently queued in bytes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>current</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The count and size of flow files currently queued.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>originalCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of flow files to be dropped as a result of this request.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>originalSize</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The size of flow files to be dropped as a result of this request in bytes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>original</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The count and size of flow files to be dropped as a result of this request.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>droppedCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of flow files that have been dropped thus far.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>droppedSize</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The size of flow files that have been dropped thus far in bytes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>dropped</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The count and size of flow files that have been dropped thus far.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>state</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The current state of the drop request.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "submissionTime": "value"<span class="comma">,</span>
    "lastUpdated": "value"<span class="comma">,</span>
    "percentCompleted": 0<span class="comma">,</span>
    "finished": true<span class="comma">,</span>
    "failureReason": "value"<span class="comma">,</span>
    "currentCount": 0<span class="comma">,</span>
    "currentSize": 0<span class="comma">,</span>
    "current": "value"<span class="comma">,</span>
    "originalCount": 0<span class="comma">,</span>
    "originalSize": 0<span class="comma">,</span>
    "original": "value"<span class="comma">,</span>
    "droppedCount": 0<span class="comma">,</span>
    "droppedSize": 0<span class="comma">,</span>
    "dropped": "value"<span class="comma">,</span>
    "state": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="DropRequestEntity" class="type hidden">
    <h3>DropRequestEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>dropRequest</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">DropRequestDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "dropRequest": <span class="nested collapsed"><span class="nested-id hidden">DropRequestDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="DtoFactory" class="type hidden">
    <h3>DtoFactory</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="Entity" class="type hidden">
    <h3>Entity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ExplicitRestrictionDTO" class="type hidden">
    <h3>ExplicitRestrictionDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>requiredPermission</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RequiredPermissionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The required permission necessary for this restriction.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>explanation</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The description of why the usage of this component is restricted for this required permission.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "requiredPermission": <span class="nested collapsed"><span class="nested-id hidden">RequiredPermissionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "explanation": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ExternalControllerServiceReference" class="type hidden">
    <h3>ExternalControllerServiceReference</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>identifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The identifier of the controller service
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the controller service
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "identifier": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="FlowBreadcrumbDTO" class="type hidden">
    <h3>FlowBreadcrumbDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionControlInformation</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">VersionControlInformationDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The process group version control information or null if not version controlled.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "versionControlInformation": <span class="nested collapsed"><span class="nested-id hidden">VersionControlInformationDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="FlowBreadcrumbEntity" class="type hidden">
    <h3>FlowBreadcrumbEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of this ancestor ProcessGroup.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this ancestor ProcessGroup.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionedFlowState</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The current state of the Process Group, as it relates to the Versioned Flow
                         Allowable values: LOCALLY_MODIFIED, STALE, LOCALLY_MODIFIED_AND_STALE, UP_TO_DATE, SYNC_FAILURE
                        </td>
                </tr>
            
                <tr>
                    <td>breadcrumb</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">FlowBreadcrumbDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>This breadcrumb.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parentBreadcrumb</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">FlowBreadcrumbEntity</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The parent breadcrumb for this breadcrumb.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "versionedFlowState": "value"<span class="comma">,</span>
    "breadcrumb": <span class="nested collapsed"><span class="nested-id hidden">FlowBreadcrumbDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "parentBreadcrumb": <span class="nested collapsed"><span class="nested-id hidden">FlowBreadcrumbEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="FlowComparisonEntity" class="type hidden">
    <h3>FlowComparisonEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>componentDifferences</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ComponentDifferenceDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The list of differences for each component in the flow that is not the same between the two flows
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "componentDifferences": [<span class="nested collapsed"><span class="nested-id hidden">ComponentDifferenceDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="FlowConfigurationDTO" class="type hidden">
    <h3>FlowConfigurationDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>supportsManagedAuthorizer</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether this NiFi supports a managed authorizer. Managed authorizers can visualize users, groups, and policies in the UI.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>supportsConfigurableAuthorizer</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether this NiFi supports a configurable authorizer.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>supportsConfigurableUsersAndGroups</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether this NiFi supports configurable users and groups.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>autoRefreshIntervalSeconds</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The interval in seconds between the automatic NiFi refresh requests.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>currentTime</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The current time on the system.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>timeOffset</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The time offset of the system.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>defaultBackPressureObjectThreshold</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The default back pressure object threshold.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>defaultBackPressureDataSizeThreshold</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The default back pressure data size threshold.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "supportsManagedAuthorizer": true<span class="comma">,</span>
    "supportsConfigurableAuthorizer": true<span class="comma">,</span>
    "supportsConfigurableUsersAndGroups": true<span class="comma">,</span>
    "autoRefreshIntervalSeconds": 0<span class="comma">,</span>
    "currentTime": "value"<span class="comma">,</span>
    "timeOffset": 0<span class="comma">,</span>
    "defaultBackPressureObjectThreshold": 0<span class="comma">,</span>
    "defaultBackPressureDataSizeThreshold": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="FlowConfigurationEntity" class="type hidden">
    <h3>FlowConfigurationEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>flowConfiguration</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">FlowConfigurationDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The controller configuration.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "flowConfiguration": <span class="nested collapsed"><span class="nested-id hidden">FlowConfigurationDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="FlowDTO" class="type hidden">
    <h3>FlowDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>processGroups</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ProcessGroupEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The process groups in this flow.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>remoteProcessGroups</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">RemoteProcessGroupEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The remote process groups in this flow.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>processors</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ProcessorEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The processors in this flow.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inputPorts</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">PortEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The input ports in this flow.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>outputPorts</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">PortEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The output ports in this flow.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>connections</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ConnectionEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The connections in this flow.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>labels</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">LabelEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The labels in this flow.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>funnels</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">FunnelEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The funnels in this flow.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "processGroups": [<span class="nested collapsed"><span class="nested-id hidden">ProcessGroupEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "remoteProcessGroups": [<span class="nested collapsed"><span class="nested-id hidden">RemoteProcessGroupEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "processors": [<span class="nested collapsed"><span class="nested-id hidden">ProcessorEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "inputPorts": [<span class="nested collapsed"><span class="nested-id hidden">PortEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "outputPorts": [<span class="nested collapsed"><span class="nested-id hidden">PortEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "connections": [<span class="nested collapsed"><span class="nested-id hidden">ConnectionEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "labels": [<span class="nested collapsed"><span class="nested-id hidden">LabelEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "funnels": [<span class="nested collapsed"><span class="nested-id hidden">FunnelEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="FlowEntity" class="type hidden">
    <h3>FlowEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>flow</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">FlowDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "flow": <span class="nested collapsed"><span class="nested-id hidden">FlowDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="FlowFileDTO" class="type hidden">
    <h3>FlowFileDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI that can be used to access this FlowFile.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uuid</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The FlowFile UUID.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>filename</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The FlowFile filename.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The FlowFile's position in the queue.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>size</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The FlowFile file size.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>queuedDuration</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>How long this FlowFile has been enqueued.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>lineageDuration</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Duration since the FlowFile's greatest ancestor entered the flow.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>penaltyExpiresIn</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>How long in milliseconds until the FlowFile penalty expires.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>clusterNodeId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the node where this FlowFile resides.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>clusterNodeAddress</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The label for the node where this FlowFile resides.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>attributes</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The FlowFile attributes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>contentClaimSection</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The section in which the content claim lives.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>contentClaimContainer</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The container in which the content claim lives.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>contentClaimIdentifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The identifier of the content claim.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>contentClaimOffset</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The offset into the content claim where the flowfile's content begins.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>contentClaimFileSize</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The file size of the content claim formatted.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>contentClaimFileSizeBytes</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The file size of the content claim in bytes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>penalized</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>If the FlowFile is penalized.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "uri": "value"<span class="comma">,</span>
    "uuid": "value"<span class="comma">,</span>
    "filename": "value"<span class="comma">,</span>
    "position": 0<span class="comma">,</span>
    "size": 0<span class="comma">,</span>
    "queuedDuration": 0<span class="comma">,</span>
    "lineageDuration": 0<span class="comma">,</span>
    "penaltyExpiresIn": 0<span class="comma">,</span>
    "clusterNodeId": "value"<span class="comma">,</span>
    "clusterNodeAddress": "value"<span class="comma">,</span>
    "attributes": <span class="open-object">&#123;
        "name": "value"
    &#125;</span><span class="comma">,</span>
    "contentClaimSection": "value"<span class="comma">,</span>
    "contentClaimContainer": "value"<span class="comma">,</span>
    "contentClaimIdentifier": "value"<span class="comma">,</span>
    "contentClaimOffset": 0<span class="comma">,</span>
    "contentClaimFileSize": "value"<span class="comma">,</span>
    "contentClaimFileSizeBytes": 0<span class="comma">,</span>
    "penalized": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="FlowFileEntity" class="type hidden">
    <h3>FlowFileEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>flowFile</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">FlowFileDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "flowFile": <span class="nested collapsed"><span class="nested-id hidden">FlowFileDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="FlowFileSummaryDTO" class="type hidden">
    <h3>FlowFileSummaryDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI that can be used to access this FlowFile.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uuid</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The FlowFile UUID.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>filename</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The FlowFile filename.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The FlowFile's position in the queue.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>size</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The FlowFile file size.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>queuedDuration</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>How long this FlowFile has been enqueued.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>lineageDuration</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Duration since the FlowFile's greatest ancestor entered the flow.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>penaltyExpiresIn</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>How long in milliseconds until the FlowFile penalty expires.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>clusterNodeId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the node where this FlowFile resides.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>clusterNodeAddress</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The label for the node where this FlowFile resides.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>penalized</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>If the FlowFile is penalized.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "uri": "value"<span class="comma">,</span>
    "uuid": "value"<span class="comma">,</span>
    "filename": "value"<span class="comma">,</span>
    "position": 0<span class="comma">,</span>
    "size": 0<span class="comma">,</span>
    "queuedDuration": 0<span class="comma">,</span>
    "lineageDuration": 0<span class="comma">,</span>
    "penaltyExpiresIn": 0<span class="comma">,</span>
    "clusterNodeId": "value"<span class="comma">,</span>
    "clusterNodeAddress": "value"<span class="comma">,</span>
    "penalized": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="FlowRegistryBucket" class="type hidden">
    <h3>FlowRegistryBucket</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>identifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>description</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>createdTimestamp</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">FlowRegistryPermissions</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "identifier": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "description": "value"<span class="comma">,</span>
    "createdTimestamp": 0<span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">FlowRegistryPermissions</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="FlowRegistryBucketDTO" class="type hidden">
    <h3>FlowRegistryBucketDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bucket identifier
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bucket name
                        
                        </td>
                </tr>
            
                <tr>
                    <td>description</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bucket description
                        
                        </td>
                </tr>
            
                <tr>
                    <td>created</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The created timestamp of this bucket
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "description": "value"<span class="comma">,</span>
    "created": 0<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="FlowRegistryBucketEntity" class="type hidden">
    <h3>FlowRegistryBucketEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bucket</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">FlowRegistryBucketDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "bucket": <span class="nested collapsed"><span class="nested-id hidden">FlowRegistryBucketDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="FlowRegistryBucketsEntity" class="type hidden">
    <h3>FlowRegistryBucketsEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>buckets</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">FlowRegistryBucketEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "buckets": [<span class="nested collapsed"><span class="nested-id hidden">FlowRegistryBucketEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="FlowRegistryClientDTO" class="type hidden">
    <h3>FlowRegistryClientDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The registry identifier
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The registry name
                        
                        </td>
                </tr>
            
                <tr>
                    <td>description</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The registry description
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>type</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The type of the controller service.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bundle</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">BundleDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The details of the artifact that bundled this processor type.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>properties</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The properties of the controller service.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>descriptors</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The descriptors for the controller service properties.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>sensitiveDynamicPropertyNames</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Set of sensitive dynamic property names
                        
                        </td>
                </tr>
            
                <tr>
                    <td>supportsSensitiveDynamicProperties</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the reporting task supports sensitive dynamic properties.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>restricted</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the reporting task requires elevated privileges.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>deprecated</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the reporting task has been deprecated.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>validationErrors</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Gets the validation errors from the reporting task. These validation errors represent the problems with the reporting task that must be resolved before it can be scheduled to run.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>validationStatus</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether the Processor is valid, invalid, or still in the process of validating (i.e., it is unknown whether or not the Processor is valid)
                         Allowable values: VALID, INVALID, VALIDATING
                        </td>
                </tr>
            
                <tr>
                    <td>annotationData</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The annotation data for the repoting task. This is how the custom UI relays configuration to the reporting task.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>multipleVersionsAvailable</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the flow registry client has multiple versions available.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>extensionMissing</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the underlying extension is missing.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "description": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "type": "value"<span class="comma">,</span>
    "bundle": <span class="nested collapsed"><span class="nested-id hidden">BundleDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "properties": <span class="open-object">&#123;
        "name": "value"
    &#125;</span><span class="comma">,</span>
    "descriptors": <span class="open-object">&#123;
        "name": <span class="nested collapsed"><span class="nested-id hidden">PropertyDescriptorDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>
    &#125;</span><span class="comma">,</span>
    "sensitiveDynamicPropertyNames": ["value"]<span class="comma">,</span>
    "supportsSensitiveDynamicProperties": true<span class="comma">,</span>
    "restricted": true<span class="comma">,</span>
    "deprecated": true<span class="comma">,</span>
    "validationErrors": ["value"]<span class="comma">,</span>
    "validationStatus": "value"<span class="comma">,</span>
    "annotationData": "value"<span class="comma">,</span>
    "multipleVersionsAvailable": true<span class="comma">,</span>
    "extensionMissing": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="FlowRegistryClientEntity" class="type hidden">
    <h3>FlowRegistryClientEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for futures requests to the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bulletins</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BulletinEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bulletins for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>registry</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">FlowRegistryClientDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>operatePermissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>component</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">FlowRegistryClientDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "bulletins": [<span class="nested collapsed"><span class="nested-id hidden">BulletinEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "registry": <span class="nested collapsed"><span class="nested-id hidden">FlowRegistryClientDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "operatePermissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "component": <span class="nested collapsed"><span class="nested-id hidden">FlowRegistryClientDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="FlowRegistryClientTypesEntity" class="type hidden">
    <h3>FlowRegistryClientTypesEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>flowRegistryClientTypes</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">DocumentedTypeDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "flowRegistryClientTypes": [<span class="nested collapsed"><span class="nested-id hidden">DocumentedTypeDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="FlowRegistryClientsEntity" class="type hidden">
    <h3>FlowRegistryClientsEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>registries</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">FlowRegistryClientEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "registries": [<span class="nested collapsed"><span class="nested-id hidden">FlowRegistryClientEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="FlowRegistryPermissions" class="type hidden">
    <h3>FlowRegistryPermissions</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>canRead</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>canWrite</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>canDelete</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "canRead": true<span class="comma">,</span>
    "canWrite": true<span class="comma">,</span>
    "canDelete": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="FlowSnippetDTO" class="type hidden">
    <h3>FlowSnippetDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>processGroups</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ProcessGroupDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The process groups in this flow snippet.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>remoteProcessGroups</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">RemoteProcessGroupDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The remote process groups in this flow snippet.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>processors</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ProcessorDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The processors in this flow snippet.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inputPorts</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">PortDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The input ports in this flow snippet.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>outputPorts</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">PortDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The output ports in this flow snippet.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>connections</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ConnectionDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The connections in this flow snippet.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>labels</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">LabelDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The labels in this flow snippet.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>funnels</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">FunnelDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The funnels in this flow snippet.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>controllerServices</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ControllerServiceDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The controller services in this flow snippet.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "processGroups": [<span class="nested collapsed"><span class="nested-id hidden">ProcessGroupDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "remoteProcessGroups": [<span class="nested collapsed"><span class="nested-id hidden">RemoteProcessGroupDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "processors": [<span class="nested collapsed"><span class="nested-id hidden">ProcessorDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "inputPorts": [<span class="nested collapsed"><span class="nested-id hidden">PortDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "outputPorts": [<span class="nested collapsed"><span class="nested-id hidden">PortDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "connections": [<span class="nested collapsed"><span class="nested-id hidden">ConnectionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "labels": [<span class="nested collapsed"><span class="nested-id hidden">LabelDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "funnels": [<span class="nested collapsed"><span class="nested-id hidden">FunnelDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "controllerServices": [<span class="nested collapsed"><span class="nested-id hidden">ControllerServiceDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="FunnelDTO" class="type hidden">
    <h3>FunnelDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionedComponentId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the corresponding component that is under version control
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parentGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of parent process group of this component if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "versionedComponentId": "value"<span class="comma">,</span>
    "parentGroupId": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="FunnelEntity" class="type hidden">
    <h3>FunnelEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for futures requests to the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bulletins</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BulletinEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bulletins for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>component</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">FunnelDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "bulletins": [<span class="nested collapsed"><span class="nested-id hidden">BulletinEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "component": <span class="nested collapsed"><span class="nested-id hidden">FunnelDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="FunnelsEntity" class="type hidden">
    <h3>FunnelsEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>funnels</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">FunnelEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "funnels": [<span class="nested collapsed"><span class="nested-id hidden">FunnelEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="GCDiagnosticsSnapshotDTO" class="type hidden">
    <h3>GCDiagnosticsSnapshotDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>timestamp</td>
                    <td>
                        
                            
                            
                                string (date-time)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp of when the Snapshot was taken
                        
                        </td>
                </tr>
            
                <tr>
                    <td>collectionCount</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of times that Garbage Collection has occurred
                        
                        </td>
                </tr>
            
                <tr>
                    <td>collectionMillis</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of milliseconds that the Garbage Collector spent performing Garbage Collection duties
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "timestamp": "value"<span class="comma">,</span>
    "collectionCount": 0<span class="comma">,</span>
    "collectionMillis": 0<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="GarbageCollectionDTO" class="type hidden">
    <h3>GarbageCollectionDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the garbage collector.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>collectionCount</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of times garbage collection has run.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>collectionTime</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The total amount of time spent garbage collecting.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>collectionMillis</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The total number of milliseconds spent garbage collecting.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "name": "value"<span class="comma">,</span>
    "collectionCount": 0<span class="comma">,</span>
    "collectionTime": "value"<span class="comma">,</span>
    "collectionMillis": 0<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="GarbageCollectionDiagnosticsDTO" class="type hidden">
    <h3>GarbageCollectionDiagnosticsDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>memoryManagerName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the Memory Manager that this Garbage Collection information pertains to
                        
                        </td>
                </tr>
            
                <tr>
                    <td>snapshots</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">GCDiagnosticsSnapshotDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A list of snapshots that have been taken to determine the health of the JVM's heap
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "memoryManagerName": "value"<span class="comma">,</span>
    "snapshots": [<span class="nested collapsed"><span class="nested-id hidden">GCDiagnosticsSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="HistoryDTO" class="type hidden">
    <h3>HistoryDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>total</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of number of actions that matched the search criteria..
                        
                        </td>
                </tr>
            
                <tr>
                    <td>lastRefreshed</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp when the report was generated.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>actions</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ActionEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The actions.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "total": 0<span class="comma">,</span>
    "lastRefreshed": "value"<span class="comma">,</span>
    "actions": [<span class="nested collapsed"><span class="nested-id hidden">ActionEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="HistoryEntity" class="type hidden">
    <h3>HistoryEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>history</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">HistoryDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "history": <span class="nested collapsed"><span class="nested-id hidden">HistoryDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="InputPortsEntity" class="type hidden">
    <h3>InputPortsEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>inputPorts</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">PortEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "inputPorts": [<span class="nested collapsed"><span class="nested-id hidden">PortEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="InputStream" class="type hidden">
    <h3>InputStream</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="InstantiateTemplateRequestEntity" class="type hidden">
    <h3>InstantiateTemplateRequestEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>originX</td>
                    <td>
                        
                            
                            
                                number (double)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The x coordinate of the origin of the bounding box where the new components will be placed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>originY</td>
                    <td>
                        
                            
                            
                                number (double)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The y coordinate of the origin of the bounding box where the new components will be placed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>templateId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The identifier of the template.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>encodingVersion</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The encoding version of the flow snippet. If not specified, this is automatically populated by the node receiving the user request. If the snippet is specified, the version will be the latest. If the snippet is not specified, the version will come from the underlying template. These details need to be replicated throughout the cluster to ensure consistency.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>snippet</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">FlowSnippetDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A flow snippet of the template contents. If not specified, this is automatically populated by the node receiving the user request. These details need to be replicated throughout the cluster to ensure consistency.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "originX": 0.0<span class="comma">,</span>
    "originY": 0.0<span class="comma">,</span>
    "templateId": "value"<span class="comma">,</span>
    "encodingVersion": "value"<span class="comma">,</span>
    "snippet": <span class="nested collapsed"><span class="nested-id hidden">FlowSnippetDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="JVMControllerDiagnosticsSnapshotDTO" class="type hidden">
    <h3>JVMControllerDiagnosticsSnapshotDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>primaryNode</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not this node is primary node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>clusterCoordinator</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not this node is cluster coordinator
                        
                        </td>
                </tr>
            
                <tr>
                    <td>maxTimerDrivenThreads</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The maximum number of timer-driven threads
                        
                        </td>
                </tr>
            
                <tr>
                    <td>maxEventDrivenThreads</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The maximum number of event-driven threads
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "primaryNode": true<span class="comma">,</span>
    "clusterCoordinator": true<span class="comma">,</span>
    "maxTimerDrivenThreads": 0<span class="comma">,</span>
    "maxEventDrivenThreads": 0<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="JVMDiagnosticsDTO" class="type hidden">
    <h3>JVMDiagnosticsDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>clustered</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not the NiFi instance is clustered
                        
                        </td>
                </tr>
            
                <tr>
                    <td>connected</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not the node is connected to the cluster
                        
                        </td>
                </tr>
            
                <tr>
                    <td>aggregateSnapshot</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">JVMDiagnosticsSnapshotDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Aggregate JVM diagnostic information about the entire cluster
                        
                        </td>
                </tr>
            
                <tr>
                    <td>nodeSnapshots</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">NodeJVMDiagnosticsSnapshotDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Node-wise breakdown of JVM diagnostic information
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "clustered": true<span class="comma">,</span>
    "connected": true<span class="comma">,</span>
    "aggregateSnapshot": <span class="nested collapsed"><span class="nested-id hidden">JVMDiagnosticsSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "nodeSnapshots": [<span class="nested collapsed"><span class="nested-id hidden">NodeJVMDiagnosticsSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="JVMDiagnosticsSnapshotDTO" class="type hidden">
    <h3>JVMDiagnosticsSnapshotDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>systemDiagnosticsDto</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">JVMSystemDiagnosticsSnapshotDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>System-related diagnostics information
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowDiagnosticsDto</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">JVMFlowDiagnosticsSnapshotDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Flow-related diagnostics information
                        
                        </td>
                </tr>
            
                <tr>
                    <td>controllerDiagnostics</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">JVMControllerDiagnosticsSnapshotDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Controller-related diagnostics information
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "systemDiagnosticsDto": <span class="nested collapsed"><span class="nested-id hidden">JVMSystemDiagnosticsSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "flowDiagnosticsDto": <span class="nested collapsed"><span class="nested-id hidden">JVMFlowDiagnosticsSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "controllerDiagnostics": <span class="nested collapsed"><span class="nested-id hidden">JVMControllerDiagnosticsSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="JVMFlowDiagnosticsSnapshotDTO" class="type hidden">
    <h3>JVMFlowDiagnosticsSnapshotDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>uptime</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>How long this node has been running, formatted as hours:minutes:seconds.milliseconds
                        
                        </td>
                </tr>
            
                <tr>
                    <td>timeZone</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the Time Zone that is configured, if available
                        
                        </td>
                </tr>
            
                <tr>
                    <td>activeTimerDrivenThreads</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of timer-driven threads that are active
                        
                        </td>
                </tr>
            
                <tr>
                    <td>activeEventDrivenThreads</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of event-driven threads that are active
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bundlesLoaded</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BundleDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The NiFi Bundles (NARs) that are loaded by NiFi
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "uptime": "value"<span class="comma">,</span>
    "timeZone": "value"<span class="comma">,</span>
    "activeTimerDrivenThreads": 0<span class="comma">,</span>
    "activeEventDrivenThreads": 0<span class="comma">,</span>
    "bundlesLoaded": [<span class="nested collapsed"><span class="nested-id hidden">BundleDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="JVMSystemDiagnosticsSnapshotDTO" class="type hidden">
    <h3>JVMSystemDiagnosticsSnapshotDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>flowFileRepositoryStorageUsage</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RepositoryUsageDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Information about the FlowFile Repository's usage
                        
                        </td>
                </tr>
            
                <tr>
                    <td>contentRepositoryStorageUsage</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">RepositoryUsageDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Information about the Content Repository's usage
                        
                        </td>
                </tr>
            
                <tr>
                    <td>provenanceRepositoryStorageUsage</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">RepositoryUsageDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Information about the Provenance Repository's usage
                        
                        </td>
                </tr>
            
                <tr>
                    <td>maxHeapBytes</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The maximum number of bytes that the JVM heap is configured to use for heap
                        
                        </td>
                </tr>
            
                <tr>
                    <td>maxHeap</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The maximum number of bytes that the JVM heap is configured to use, as a human-readable value
                        
                        </td>
                </tr>
            
                <tr>
                    <td>garbageCollectionDiagnostics</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">GarbageCollectionDiagnosticsDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Diagnostic information about the JVM's garbage collections
                        
                        </td>
                </tr>
            
                <tr>
                    <td>cpuCores</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of CPU Cores available on the system
                        
                        </td>
                </tr>
            
                <tr>
                    <td>cpuLoadAverage</td>
                    <td>
                        
                            
                            
                                number (double)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The 1-minute CPU Load Average
                        
                        </td>
                </tr>
            
                <tr>
                    <td>physicalMemoryBytes</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of bytes of RAM available on the system
                        
                        </td>
                </tr>
            
                <tr>
                    <td>physicalMemory</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of bytes of RAM available on the system as a human-readable value
                        
                        </td>
                </tr>
            
                <tr>
                    <td>openFileDescriptors</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of files that are open by the NiFi process
                        
                        </td>
                </tr>
            
                <tr>
                    <td>maxOpenFileDescriptors</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The maximum number of open file descriptors that are available to each process
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "flowFileRepositoryStorageUsage": <span class="nested collapsed"><span class="nested-id hidden">RepositoryUsageDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "contentRepositoryStorageUsage": [<span class="nested collapsed"><span class="nested-id hidden">RepositoryUsageDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "provenanceRepositoryStorageUsage": [<span class="nested collapsed"><span class="nested-id hidden">RepositoryUsageDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "maxHeapBytes": 0<span class="comma">,</span>
    "maxHeap": "value"<span class="comma">,</span>
    "garbageCollectionDiagnostics": [<span class="nested collapsed"><span class="nested-id hidden">GarbageCollectionDiagnosticsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "cpuCores": 0<span class="comma">,</span>
    "cpuLoadAverage": 0.0<span class="comma">,</span>
    "physicalMemoryBytes": 0<span class="comma">,</span>
    "physicalMemory": "value"<span class="comma">,</span>
    "openFileDescriptors": 0<span class="comma">,</span>
    "maxOpenFileDescriptors": 0<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="LabelDTO" class="type hidden">
    <h3>LabelDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionedComponentId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the corresponding component that is under version control
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parentGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of parent process group of this component if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>label</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The text that appears in the label.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>width</td>
                    <td>
                        
                            
                            
                                number (double)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The width of the label in pixels when at a 1:1 scale.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>height</td>
                    <td>
                        
                            
                            
                                number (double)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The height of the label in pixels when at a 1:1 scale.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>getzIndex</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The z index of the label.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>style</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The styles for this label (font-size : 12px, background-color : #eee, etc).
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "versionedComponentId": "value"<span class="comma">,</span>
    "parentGroupId": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "label": "value"<span class="comma">,</span>
    "width": 0.0<span class="comma">,</span>
    "height": 0.0<span class="comma">,</span>
    "getzIndex": 0<span class="comma">,</span>
    "style": <span class="open-object">&#123;
        "name": "value"
    &#125;</span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="LabelEntity" class="type hidden">
    <h3>LabelEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for futures requests to the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bulletins</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BulletinEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bulletins for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>dimensions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">DimensionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>getzIndex</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The z index of the label.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>component</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">LabelDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "bulletins": [<span class="nested collapsed"><span class="nested-id hidden">BulletinEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "dimensions": <span class="nested collapsed"><span class="nested-id hidden">DimensionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "getzIndex": 0<span class="comma">,</span>
    "component": <span class="nested collapsed"><span class="nested-id hidden">LabelDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="LabelsEntity" class="type hidden">
    <h3>LabelsEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>labels</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">LabelEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "labels": [<span class="nested collapsed"><span class="nested-id hidden">LabelEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="LineageDTO" class="type hidden">
    <h3>LineageDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of this lineage query.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for this lineage query for later retrieval and deletion.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>submissionTime</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>When the lineage query was submitted.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>expiration</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>When the lineage query will expire.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>percentCompleted</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The percent complete for the lineage query.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>finished</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the lineage query has finished.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>request</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">LineageRequestDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The initial lineage result.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>results</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">LineageResultsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The results of the lineage query.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "submissionTime": "value"<span class="comma">,</span>
    "expiration": "value"<span class="comma">,</span>
    "percentCompleted": 0<span class="comma">,</span>
    "finished": true<span class="comma">,</span>
    "request": <span class="nested collapsed"><span class="nested-id hidden">LineageRequestDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "results": <span class="nested collapsed"><span class="nested-id hidden">LineageResultsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="LineageEntity" class="type hidden">
    <h3>LineageEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>lineage</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">LineageDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "lineage": <span class="nested collapsed"><span class="nested-id hidden">LineageDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="LineageRequestDTO" class="type hidden">
    <h3>LineageRequestDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>eventId</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The event id that was used to generate this lineage, if applicable. The event id is allowed for any type of lineageRequestType. If the lineageRequestType is FLOWFILE and the flowfile uuid is also included in the request, the event id will be ignored.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>lineageRequestType</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The type of lineage request. PARENTS will return the lineage for the flowfiles that are parents of the specified event. CHILDREN will return the lineage for the flowfiles that are children of the specified event. FLOWFILE will return the lineage for the specified flowfile.
                         Allowable values: PARENTS, CHILDREN, and FLOWFILE
                        </td>
                </tr>
            
                <tr>
                    <td>uuid</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The flowfile uuid that was used to generate the lineage. The flowfile uuid is only allowed when the lineageRequestType is FLOWFILE and will take precedence over event id.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>clusterNodeId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the node where this lineage originated if clustered.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "eventId": 0<span class="comma">,</span>
    "lineageRequestType": "value"<span class="comma">,</span>
    "uuid": "value"<span class="comma">,</span>
    "clusterNodeId": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="LineageResultsDTO" class="type hidden">
    <h3>LineageResultsDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>errors</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Any errors that occurred while generating the lineage.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>nodes</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ProvenanceNodeDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The nodes in the lineage.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>links</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ProvenanceLinkDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The links between the nodes in the lineage.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "errors": ["value"]<span class="comma">,</span>
    "nodes": [<span class="nested collapsed"><span class="nested-id hidden">ProvenanceNodeDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "links": [<span class="nested collapsed"><span class="nested-id hidden">ProvenanceLinkDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ListingRequestDTO" class="type hidden">
    <h3>ListingRequestDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id for this listing request.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for future requests to this listing request.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>submissionTime</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp when the query was submitted.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>lastUpdated</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The last time this listing request was updated.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>percentCompleted</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The current percent complete.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>finished</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the query has finished.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>failureReason</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The reason, if any, that this listing request failed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>maxResults</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The maximum number of FlowFileSummary objects to return
                        
                        </td>
                </tr>
            
                <tr>
                    <td>state</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The current state of the listing request.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>queueSize</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">QueueSizeDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The size of the queue
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowFileSummaries</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">FlowFileSummaryDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The FlowFile summaries. The summaries will be populated once the request has completed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>sourceRunning</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the source of the connection is running
                        
                        </td>
                </tr>
            
                <tr>
                    <td>destinationRunning</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the destination of the connection is running
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "submissionTime": "value"<span class="comma">,</span>
    "lastUpdated": "value"<span class="comma">,</span>
    "percentCompleted": 0<span class="comma">,</span>
    "finished": true<span class="comma">,</span>
    "failureReason": "value"<span class="comma">,</span>
    "maxResults": 0<span class="comma">,</span>
    "state": "value"<span class="comma">,</span>
    "queueSize": <span class="nested collapsed"><span class="nested-id hidden">QueueSizeDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "flowFileSummaries": [<span class="nested collapsed"><span class="nested-id hidden">FlowFileSummaryDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "sourceRunning": true<span class="comma">,</span>
    "destinationRunning": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ListingRequestEntity" class="type hidden">
    <h3>ListingRequestEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>listingRequest</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ListingRequestDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "listingRequest": <span class="nested collapsed"><span class="nested-id hidden">ListingRequestDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="LocalQueuePartitionDTO" class="type hidden">
    <h3>LocalQueuePartitionDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>totalFlowFileCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Total number of FlowFiles owned by the Connection
                        
                        </td>
                </tr>
            
                <tr>
                    <td>totalByteCount</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Total number of bytes that make up the content for the FlowFiles owned by this Connection
                        
                        </td>
                </tr>
            
                <tr>
                    <td>activeQueueFlowFileCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Total number of FlowFiles that exist in the Connection's Active Queue, immediately available to be offered up to a component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>activeQueueByteCount</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Total number of bytes that make up the content for the FlowFiles that are present in the Connection's Active Queue
                        
                        </td>
                </tr>
            
                <tr>
                    <td>swapFlowFileCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The total number of FlowFiles that are swapped out for this Connection
                        
                        </td>
                </tr>
            
                <tr>
                    <td>swapByteCount</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Total number of bytes that make up the content for the FlowFiles that are swapped out to disk for the Connection
                        
                        </td>
                </tr>
            
                <tr>
                    <td>swapFiles</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of Swap Files that exist for this Connection
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inFlightFlowFileCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of In-Flight FlowFiles for this Connection. These are FlowFiles that belong to the connection but are currently being operated on by a Processor, Port, etc.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inFlightByteCount</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number bytes that make up the content of the FlowFiles that are In-Flight
                        
                        </td>
                </tr>
            
                <tr>
                    <td>allActiveQueueFlowFilesPenalized</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not all of the FlowFiles in the Active Queue are penalized
                        
                        </td>
                </tr>
            
                <tr>
                    <td>anyActiveQueueFlowFilesPenalized</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not any of the FlowFiles in the Active Queue are penalized
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "totalFlowFileCount": 0<span class="comma">,</span>
    "totalByteCount": 0<span class="comma">,</span>
    "activeQueueFlowFileCount": 0<span class="comma">,</span>
    "activeQueueByteCount": 0<span class="comma">,</span>
    "swapFlowFileCount": 0<span class="comma">,</span>
    "swapByteCount": 0<span class="comma">,</span>
    "swapFiles": 0<span class="comma">,</span>
    "inFlightFlowFileCount": 0<span class="comma">,</span>
    "inFlightByteCount": 0<span class="comma">,</span>
    "allActiveQueueFlowFilesPenalized": true<span class="comma">,</span>
    "anyActiveQueueFlowFilesPenalized": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="NodeConnectionStatisticsSnapshotDTO" class="type hidden">
    <h3>NodeConnectionStatisticsSnapshotDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>nodeId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The unique ID that identifies the node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>address</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The API address of the node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>apiPort</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The API port used to communicate with the node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>statisticsSnapshot</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ConnectionStatisticsSnapshotDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The connection status snapshot from the node.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "nodeId": "value"<span class="comma">,</span>
    "address": "value"<span class="comma">,</span>
    "apiPort": 0<span class="comma">,</span>
    "statisticsSnapshot": <span class="nested collapsed"><span class="nested-id hidden">ConnectionStatisticsSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="NodeConnectionStatusSnapshotDTO" class="type hidden">
    <h3>NodeConnectionStatusSnapshotDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>nodeId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The unique ID that identifies the node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>address</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The API address of the node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>apiPort</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The API port used to communicate with the node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>statusSnapshot</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ConnectionStatusSnapshotDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The connection status snapshot from the node.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "nodeId": "value"<span class="comma">,</span>
    "address": "value"<span class="comma">,</span>
    "apiPort": 0<span class="comma">,</span>
    "statusSnapshot": <span class="nested collapsed"><span class="nested-id hidden">ConnectionStatusSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="NodeCountersSnapshotDTO" class="type hidden">
    <h3>NodeCountersSnapshotDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>nodeId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The unique ID that identifies the node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>address</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The API address of the node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>apiPort</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The API port used to communicate with the node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>snapshot</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">CountersSnapshotDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The counters from the node.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "nodeId": "value"<span class="comma">,</span>
    "address": "value"<span class="comma">,</span>
    "apiPort": 0<span class="comma">,</span>
    "snapshot": <span class="nested collapsed"><span class="nested-id hidden">CountersSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="NodeDTO" class="type hidden">
    <h3>NodeDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>nodeId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the node.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>address</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The node's host/ip address.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>apiPort</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The port the node is listening for API requests.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>status</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The node's status.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>heartbeat</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>the time of the nodes's last heartbeat.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>connectionRequested</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The time of the node's last connection request.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>roles</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The roles of this node.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>activeThreadCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The active threads for the NiFi on the node.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>queued</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The queue the NiFi on the node.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>events</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">NodeEventDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The node's events.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>nodeStartTime</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The time at which this Node was last refreshed.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "nodeId": "value"<span class="comma">,</span>
    "address": "value"<span class="comma">,</span>
    "apiPort": 0<span class="comma">,</span>
    "status": "value"<span class="comma">,</span>
    "heartbeat": "value"<span class="comma">,</span>
    "connectionRequested": "value"<span class="comma">,</span>
    "roles": ["value"]<span class="comma">,</span>
    "activeThreadCount": 0<span class="comma">,</span>
    "queued": "value"<span class="comma">,</span>
    "events": [<span class="nested collapsed"><span class="nested-id hidden">NodeEventDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "nodeStartTime": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="NodeEntity" class="type hidden">
    <h3>NodeEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>node</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">NodeDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "node": <span class="nested collapsed"><span class="nested-id hidden">NodeDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="NodeEventDTO" class="type hidden">
    <h3>NodeEventDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>timestamp</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp of the node event.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>category</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The category of the node event.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>message</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The message in the node event.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "timestamp": "value"<span class="comma">,</span>
    "category": "value"<span class="comma">,</span>
    "message": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="NodeIdentifier" class="type hidden">
    <h3>NodeIdentifier</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>apiAddress</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>apiPort</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>socketAddress</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>socketPort</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>loadBalanceAddress</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>loadBalancePort</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>siteToSiteAddress</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>siteToSitePort</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>siteToSiteHttpApiPort</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>siteToSiteSecure</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>nodeIdentities</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>fullDescription</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "apiAddress": "value"<span class="comma">,</span>
    "apiPort": 0<span class="comma">,</span>
    "socketAddress": "value"<span class="comma">,</span>
    "socketPort": 0<span class="comma">,</span>
    "loadBalanceAddress": "value"<span class="comma">,</span>
    "loadBalancePort": 0<span class="comma">,</span>
    "siteToSiteAddress": "value"<span class="comma">,</span>
    "siteToSitePort": 0<span class="comma">,</span>
    "siteToSiteHttpApiPort": 0<span class="comma">,</span>
    "siteToSiteSecure": true<span class="comma">,</span>
    "nodeIdentities": ["value"]<span class="comma">,</span>
    "fullDescription": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="NodeJVMDiagnosticsSnapshotDTO" class="type hidden">
    <h3>NodeJVMDiagnosticsSnapshotDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>nodeId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The unique ID that identifies the node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>address</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The API address of the node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>apiPort</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The API port used to communicate with the node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>snapshot</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">JVMDiagnosticsSnapshotDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The JVM Diagnostics Snapshot
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "nodeId": "value"<span class="comma">,</span>
    "address": "value"<span class="comma">,</span>
    "apiPort": 0<span class="comma">,</span>
    "snapshot": <span class="nested collapsed"><span class="nested-id hidden">JVMDiagnosticsSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="NodePortStatusSnapshotDTO" class="type hidden">
    <h3>NodePortStatusSnapshotDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>nodeId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The unique ID that identifies the node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>address</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The API address of the node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>apiPort</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The API port used to communicate with the node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>statusSnapshot</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PortStatusSnapshotDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The port status snapshot from the node.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "nodeId": "value"<span class="comma">,</span>
    "address": "value"<span class="comma">,</span>
    "apiPort": 0<span class="comma">,</span>
    "statusSnapshot": <span class="nested collapsed"><span class="nested-id hidden">PortStatusSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="NodeProcessGroupStatusSnapshotDTO" class="type hidden">
    <h3>NodeProcessGroupStatusSnapshotDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>nodeId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The unique ID that identifies the node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>address</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The API address of the node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>apiPort</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The API port used to communicate with the node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>statusSnapshot</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ProcessGroupStatusSnapshotDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The process group status snapshot from the node.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "nodeId": "value"<span class="comma">,</span>
    "address": "value"<span class="comma">,</span>
    "apiPort": 0<span class="comma">,</span>
    "statusSnapshot": <span class="nested collapsed"><span class="nested-id hidden">ProcessGroupStatusSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="NodeProcessorStatusSnapshotDTO" class="type hidden">
    <h3>NodeProcessorStatusSnapshotDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>nodeId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The unique ID that identifies the node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>address</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The API address of the node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>apiPort</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The API port used to communicate with the node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>statusSnapshot</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ProcessorStatusSnapshotDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The processor status snapshot from the node.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "nodeId": "value"<span class="comma">,</span>
    "address": "value"<span class="comma">,</span>
    "apiPort": 0<span class="comma">,</span>
    "statusSnapshot": <span class="nested collapsed"><span class="nested-id hidden">ProcessorStatusSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="NodeRemoteProcessGroupStatusSnapshotDTO" class="type hidden">
    <h3>NodeRemoteProcessGroupStatusSnapshotDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>nodeId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The unique ID that identifies the node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>address</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The API address of the node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>apiPort</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The API port used to communicate with the node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>statusSnapshot</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RemoteProcessGroupStatusSnapshotDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The remote process group status snapshot from the node.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "nodeId": "value"<span class="comma">,</span>
    "address": "value"<span class="comma">,</span>
    "apiPort": 0<span class="comma">,</span>
    "statusSnapshot": <span class="nested collapsed"><span class="nested-id hidden">RemoteProcessGroupStatusSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="NodeReplayLastEventSnapshotDTO" class="type hidden">
    <h3>NodeReplayLastEventSnapshotDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>nodeId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The unique ID that identifies the node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>address</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The API address of the node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>apiPort</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The API port used to communicate with the node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>snapshot</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ReplayLastEventSnapshotDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The snapshot from the node
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "nodeId": "value"<span class="comma">,</span>
    "address": "value"<span class="comma">,</span>
    "apiPort": 0<span class="comma">,</span>
    "snapshot": <span class="nested collapsed"><span class="nested-id hidden">ReplayLastEventSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="NodeResponse" class="type hidden">
    <h3>NodeResponse</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>httpMethod</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>requestUri</td>
                    <td>
                        
                            
                            
                                string (uri)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>response</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">Response</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>nodeId</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">NodeIdentifier</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>throwable</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">Throwable</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>updatedEntity</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">Entity</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>requestId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>status</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>is5xx</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>is2xx</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>clientResponse</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">Response</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inputStream</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">InputStream</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "httpMethod": "value"<span class="comma">,</span>
    "requestUri": "value"<span class="comma">,</span>
    "response": <span class="nested collapsed"><span class="nested-id hidden">Response</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "nodeId": <span class="nested collapsed"><span class="nested-id hidden">NodeIdentifier</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "throwable": <span class="nested collapsed"><span class="nested-id hidden">Throwable</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "updatedEntity": <span class="nested collapsed"><span class="nested-id hidden">Entity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "requestId": "value"<span class="comma">,</span>
    "status": 0<span class="comma">,</span>
    "is5xx": true<span class="comma">,</span>
    "is2xx": true<span class="comma">,</span>
    "clientResponse": <span class="nested collapsed"><span class="nested-id hidden">Response</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "inputStream": <span class="nested collapsed"><span class="nested-id hidden">InputStream</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="NodeSearchResultDTO" class="type hidden">
    <h3>NodeSearchResultDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the node that matched the search.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>address</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The address of the node that matched the search.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "address": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="NodeStatusSnapshotsDTO" class="type hidden">
    <h3>NodeStatusSnapshotsDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>nodeId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the node.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>address</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The node's host/ip address.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>apiPort</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The port the node is listening for API requests.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>statusSnapshots</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">StatusSnapshotDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A list of StatusSnapshotDTO objects that provide the actual metric values for the component for this node.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "nodeId": "value"<span class="comma">,</span>
    "address": "value"<span class="comma">,</span>
    "apiPort": 0<span class="comma">,</span>
    "statusSnapshots": [<span class="nested collapsed"><span class="nested-id hidden">StatusSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="NodeSystemDiagnosticsSnapshotDTO" class="type hidden">
    <h3>NodeSystemDiagnosticsSnapshotDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>nodeId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The unique ID that identifies the node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>address</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The API address of the node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>apiPort</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The API port used to communicate with the node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>snapshot</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">SystemDiagnosticsSnapshotDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The System Diagnostics snapshot from the node.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "nodeId": "value"<span class="comma">,</span>
    "address": "value"<span class="comma">,</span>
    "apiPort": 0<span class="comma">,</span>
    "snapshot": <span class="nested collapsed"><span class="nested-id hidden">SystemDiagnosticsSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="OutputPortsEntity" class="type hidden">
    <h3>OutputPortsEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>outputPorts</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">PortEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "outputPorts": [<span class="nested collapsed"><span class="nested-id hidden">PortEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ParameterContextDTO" class="type hidden">
    <h3>ParameterContextDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Name of the Parameter Context.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>description</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Description of the Parameter Context.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parameters</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ParameterEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Parameters for the Parameter Context
                        
                        </td>
                </tr>
            
                <tr>
                    <td>boundProcessGroups</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ProcessGroupEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Process Groups that are bound to this Parameter Context
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inheritedParameterContexts</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ParameterContextReferenceEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A list of references of Parameter Contexts from which this one inherits parameters
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parameterProviderConfiguration</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ParameterProviderConfigurationEntity</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Optional configuration for a Parameter Provider
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID the Parameter Context.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "name": "value"<span class="comma">,</span>
    "description": "value"<span class="comma">,</span>
    "parameters": [<span class="nested collapsed"><span class="nested-id hidden">ParameterEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "boundProcessGroups": [<span class="nested collapsed"><span class="nested-id hidden">ProcessGroupEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "inheritedParameterContexts": [<span class="nested collapsed"><span class="nested-id hidden">ParameterContextReferenceEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "parameterProviderConfiguration": <span class="nested collapsed"><span class="nested-id hidden">ParameterProviderConfigurationEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ParameterContextEntity" class="type hidden">
    <h3>ParameterContextEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for futures requests to the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bulletins</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BulletinEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bulletins for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>component</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ParameterContextDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Parameter Context
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "bulletins": [<span class="nested collapsed"><span class="nested-id hidden">BulletinEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "component": <span class="nested collapsed"><span class="nested-id hidden">ParameterContextDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ParameterContextReferenceDTO" class="type hidden">
    <h3>ParameterContextReferenceDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the Parameter Context
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the Parameter Context
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ParameterContextReferenceEntity" class="type hidden">
    <h3>ParameterContextReferenceEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>component</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ParameterContextReferenceDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "component": <span class="nested collapsed"><span class="nested-id hidden">ParameterContextReferenceDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ParameterContextUpdateEntity" class="type hidden">
    <h3>ParameterContextUpdateEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>parameterContextRevision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Revision of the Parameter Context
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parameterContext</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ParameterContextDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Parameter Context that is being operated on. This may not be populated until the request has successfully completed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>referencingComponents</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">AffectedComponentEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The components that are referenced by the update.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "parameterContextRevision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "parameterContext": <span class="nested collapsed"><span class="nested-id hidden">ParameterContextDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "referencingComponents": [<span class="nested collapsed"><span class="nested-id hidden">AffectedComponentEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ParameterContextUpdateRequestDTO" class="type hidden">
    <h3>ParameterContextUpdateRequestDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>requestId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the request
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for the request
                        
                        </td>
                </tr>
            
                <tr>
                    <td>submissionTime</td>
                    <td>
                        
                            
                            
                                string (date-time)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp of when the request was submitted
                        
                        </td>
                </tr>
            
                <tr>
                    <td>lastUpdated</td>
                    <td>
                        
                            
                            
                                string (date-time)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp of when the request was last updated
                        
                        </td>
                </tr>
            
                <tr>
                    <td>complete</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not the request is completed
                        
                        </td>
                </tr>
            
                <tr>
                    <td>failureReason</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The reason for the request failing, or null if the request has not failed
                        
                        </td>
                </tr>
            
                <tr>
                    <td>percentCompleted</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A value between 0 and 100 (inclusive) indicating how close the request is to completion
                        
                        </td>
                </tr>
            
                <tr>
                    <td>state</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A description of the current state of the request
                        
                        </td>
                </tr>
            
                <tr>
                    <td>updateSteps</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ParameterContextUpdateStepDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The steps that are required in order to complete the request, along with the status of each
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parameterContext</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ParameterContextDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Parameter Context that is being operated on. This may not be populated until the request has successfully completed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>referencingComponents</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">AffectedComponentEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The components that are referenced by the update.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "requestId": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "submissionTime": "value"<span class="comma">,</span>
    "lastUpdated": "value"<span class="comma">,</span>
    "complete": true<span class="comma">,</span>
    "failureReason": "value"<span class="comma">,</span>
    "percentCompleted": 0<span class="comma">,</span>
    "state": "value"<span class="comma">,</span>
    "updateSteps": [<span class="nested collapsed"><span class="nested-id hidden">ParameterContextUpdateStepDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "parameterContext": <span class="nested collapsed"><span class="nested-id hidden">ParameterContextDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "referencingComponents": [<span class="nested collapsed"><span class="nested-id hidden">AffectedComponentEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ParameterContextUpdateRequestEntity" class="type hidden">
    <h3>ParameterContextUpdateRequestEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>parameterContextRevision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Revision of the Parameter Context
                        
                        </td>
                </tr>
            
                <tr>
                    <td>request</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ParameterContextUpdateRequestDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Update Request
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "parameterContextRevision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "request": <span class="nested collapsed"><span class="nested-id hidden">ParameterContextUpdateRequestDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ParameterContextUpdateStepDTO" class="type hidden">
    <h3>ParameterContextUpdateStepDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>description</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Explanation of what happens in this step
                        
                        </td>
                </tr>
            
                <tr>
                    <td>complete</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not this step has completed
                        
                        </td>
                </tr>
            
                <tr>
                    <td>failureReason</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>An explanation of why this step failed, or null if this step did not fail
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "description": "value"<span class="comma">,</span>
    "complete": true<span class="comma">,</span>
    "failureReason": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ParameterContextValidationRequestDTO" class="type hidden">
    <h3>ParameterContextValidationRequestDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>requestId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the request
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for the request
                        
                        </td>
                </tr>
            
                <tr>
                    <td>submissionTime</td>
                    <td>
                        
                            
                            
                                string (date-time)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp of when the request was submitted
                        
                        </td>
                </tr>
            
                <tr>
                    <td>lastUpdated</td>
                    <td>
                        
                            
                            
                                string (date-time)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp of when the request was last updated
                        
                        </td>
                </tr>
            
                <tr>
                    <td>complete</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not the request is completed
                        
                        </td>
                </tr>
            
                <tr>
                    <td>failureReason</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The reason for the request failing, or null if the request has not failed
                        
                        </td>
                </tr>
            
                <tr>
                    <td>percentCompleted</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A value between 0 and 100 (inclusive) indicating how close the request is to completion
                        
                        </td>
                </tr>
            
                <tr>
                    <td>state</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A description of the current state of the request
                        
                        </td>
                </tr>
            
                <tr>
                    <td>updateSteps</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ParameterContextValidationStepDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The steps that are required in order to complete the request, along with the status of each
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parameterContext</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ParameterContextDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Parameter Context that is being operated on.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>componentValidationResults</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ComponentValidationResultsEntity</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Validation Results that were calculated for each component. This value may not be set until the request completes.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "requestId": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "submissionTime": "value"<span class="comma">,</span>
    "lastUpdated": "value"<span class="comma">,</span>
    "complete": true<span class="comma">,</span>
    "failureReason": "value"<span class="comma">,</span>
    "percentCompleted": 0<span class="comma">,</span>
    "state": "value"<span class="comma">,</span>
    "updateSteps": [<span class="nested collapsed"><span class="nested-id hidden">ParameterContextValidationStepDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "parameterContext": <span class="nested collapsed"><span class="nested-id hidden">ParameterContextDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "componentValidationResults": <span class="nested collapsed"><span class="nested-id hidden">ComponentValidationResultsEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ParameterContextValidationRequestEntity" class="type hidden">
    <h3>ParameterContextValidationRequestEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>request</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ParameterContextValidationRequestDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Update Request
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "request": <span class="nested collapsed"><span class="nested-id hidden">ParameterContextValidationRequestDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ParameterContextValidationStepDTO" class="type hidden">
    <h3>ParameterContextValidationStepDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>description</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Explanation of what happens in this step
                        
                        </td>
                </tr>
            
                <tr>
                    <td>complete</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not this step has completed
                        
                        </td>
                </tr>
            
                <tr>
                    <td>failureReason</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>An explanation of why this step failed, or null if this step did not fail
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "description": "value"<span class="comma">,</span>
    "complete": true<span class="comma">,</span>
    "failureReason": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ParameterContextsEntity" class="type hidden">
    <h3>ParameterContextsEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>parameterContexts</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ParameterContextEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Parameter Contexts
                        
                        </td>
                </tr>
            
                <tr>
                    <td>currentTime</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The current time on the system.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "parameterContexts": [<span class="nested collapsed"><span class="nested-id hidden">ParameterContextEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "currentTime": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ParameterDTO" class="type hidden">
    <h3>ParameterDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the Parameter
                        
                        </td>
                </tr>
            
                <tr>
                    <td>description</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The description of the Parameter
                        
                        </td>
                </tr>
            
                <tr>
                    <td>sensitive</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not the Parameter is sensitive
                        
                        </td>
                </tr>
            
                <tr>
                    <td>value</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The value of the Parameter
                        
                        </td>
                </tr>
            
                <tr>
                    <td>valueRemoved</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not the value of the Parameter was removed. When a request is made to change a parameter, the value may be null. The absence of the value may be used either to indicate that the value is not to be changed, or that the value is to be set to null (i.e., removed). This denotes which of the two scenarios is being encountered.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>provided</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not the Parameter is provided by a ParameterProvider
                        
                        </td>
                </tr>
            
                <tr>
                    <td>referencingComponents</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">AffectedComponentEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The set of all components in the flow that are referencing this Parameter
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parameterContext</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ParameterContextReferenceEntity</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A reference to the Parameter Context that contains this one
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inherited</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not the Parameter is inherited from another context
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "name": "value"<span class="comma">,</span>
    "description": "value"<span class="comma">,</span>
    "sensitive": true<span class="comma">,</span>
    "value": "value"<span class="comma">,</span>
    "valueRemoved": true<span class="comma">,</span>
    "provided": true<span class="comma">,</span>
    "referencingComponents": [<span class="nested collapsed"><span class="nested-id hidden">AffectedComponentEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "parameterContext": <span class="nested collapsed"><span class="nested-id hidden">ParameterContextReferenceEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "inherited": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ParameterEntity" class="type hidden">
    <h3>ParameterEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>canWrite</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether the user can write a given resource.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parameter</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ParameterDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The parameter information
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "canWrite": true<span class="comma">,</span>
    "parameter": <span class="nested collapsed"><span class="nested-id hidden">ParameterDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ParameterGroupConfigurationEntity" class="type hidden">
    <h3>ParameterGroupConfigurationEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>groupName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the external parameter group to which the provided parameter names apply.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parameterContextName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the ParameterContext that receives the parameters in this group
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parameterSensitivities</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>All fetched parameter names that should be applied.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>synchronized</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>True if this group should be synchronized to a ParameterContext, including creating one if it does not exist.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "groupName": "value"<span class="comma">,</span>
    "parameterContextName": "value"<span class="comma">,</span>
    "parameterSensitivities": <span class="open-object">&#123;
        "name": "value"
    &#125;</span><span class="comma">,</span>
    "synchronized": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ParameterProviderApplyParametersRequestDTO" class="type hidden">
    <h3>ParameterProviderApplyParametersRequestDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>requestId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the request
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for the request
                        
                        </td>
                </tr>
            
                <tr>
                    <td>submissionTime</td>
                    <td>
                        
                            
                            
                                string (date-time)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp of when the request was submitted
                        
                        </td>
                </tr>
            
                <tr>
                    <td>lastUpdated</td>
                    <td>
                        
                            
                            
                                string (date-time)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp of when the request was last updated
                        
                        </td>
                </tr>
            
                <tr>
                    <td>complete</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not the request is completed
                        
                        </td>
                </tr>
            
                <tr>
                    <td>failureReason</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The reason for the request failing, or null if the request has not failed
                        
                        </td>
                </tr>
            
                <tr>
                    <td>percentCompleted</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A value between 0 and 100 (inclusive) indicating how close the request is to completion
                        
                        </td>
                </tr>
            
                <tr>
                    <td>state</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A description of the current state of the request
                        
                        </td>
                </tr>
            
                <tr>
                    <td>updateSteps</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ParameterProviderApplyParametersUpdateStepDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The steps that are required in order to complete the request, along with the status of each
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parameterProvider</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ParameterProviderDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Parameter Provider that is being operated on. This may not be populated until the request has successfully completed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parameterContextUpdates</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ParameterContextUpdateEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Parameter Contexts updated by this Parameter Provider. This may not be populated until the request has successfully completed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>referencingComponents</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">AffectedComponentEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The components that are referenced by the update.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "requestId": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "submissionTime": "value"<span class="comma">,</span>
    "lastUpdated": "value"<span class="comma">,</span>
    "complete": true<span class="comma">,</span>
    "failureReason": "value"<span class="comma">,</span>
    "percentCompleted": 0<span class="comma">,</span>
    "state": "value"<span class="comma">,</span>
    "updateSteps": [<span class="nested collapsed"><span class="nested-id hidden">ParameterProviderApplyParametersUpdateStepDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "parameterProvider": <span class="nested collapsed"><span class="nested-id hidden">ParameterProviderDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "parameterContextUpdates": [<span class="nested collapsed"><span class="nested-id hidden">ParameterContextUpdateEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "referencingComponents": [<span class="nested collapsed"><span class="nested-id hidden">AffectedComponentEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ParameterProviderApplyParametersRequestEntity" class="type hidden">
    <h3>ParameterProviderApplyParametersRequestEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>request</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ParameterProviderApplyParametersRequestDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Apply Parameters Request
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "request": <span class="nested collapsed"><span class="nested-id hidden">ParameterProviderApplyParametersRequestDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ParameterProviderApplyParametersUpdateStepDTO" class="type hidden">
    <h3>ParameterProviderApplyParametersUpdateStepDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>description</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Explanation of what happens in this step
                        
                        </td>
                </tr>
            
                <tr>
                    <td>complete</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not this step has completed
                        
                        </td>
                </tr>
            
                <tr>
                    <td>failureReason</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>An explanation of why this step failed, or null if this step did not fail
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "description": "value"<span class="comma">,</span>
    "complete": true<span class="comma">,</span>
    "failureReason": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ParameterProviderConfigurationDTO" class="type hidden">
    <h3>ParameterProviderConfigurationDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>parameterProviderId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the Parameter Provider
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parameterProviderName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the Parameter Provider
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parameterGroupName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Parameter Group name that maps to the Parameter Context
                        
                        </td>
                </tr>
            
                <tr>
                    <td>synchronized</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>True if the Parameter Context should receive the parameters from the mapped Parameter Group
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "parameterProviderId": "value"<span class="comma">,</span>
    "parameterProviderName": "value"<span class="comma">,</span>
    "parameterGroupName": "value"<span class="comma">,</span>
    "synchronized": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ParameterProviderConfigurationEntity" class="type hidden">
    <h3>ParameterProviderConfigurationEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>component</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ParameterProviderConfigurationDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "component": <span class="nested collapsed"><span class="nested-id hidden">ParameterProviderConfigurationDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ParameterProviderDTO" class="type hidden">
    <h3>ParameterProviderDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionedComponentId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the corresponding component that is under version control
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parentGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of parent process group of this component if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the parameter provider.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>type</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The fully qualified type of the parameter provider.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bundle</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">BundleDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The details of the artifact that bundled this parameter provider type.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>comments</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The comments of the parameter provider.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>persistsState</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the parameter provider persists state.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>restricted</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the parameter provider requires elevated privileges.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>deprecated</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the parameter provider has been deprecated.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>multipleVersionsAvailable</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the parameter provider has multiple versions available.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>properties</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The properties of the parameter provider.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>descriptors</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The descriptors for the parameter providers properties.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parameterGroupConfigurations</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ParameterGroupConfigurationEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Configuration for any fetched parameter groups.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>affectedComponents</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">AffectedComponentEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The set of all components in the flow that are referencing Parameters provided by this provider
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parameterStatus</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ParameterStatusDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The status of all provided parameters for this parameter provider
                        
                        </td>
                </tr>
            
                <tr>
                    <td>referencingParameterContexts</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ParameterProviderReferencingComponentEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Parameter Contexts that reference this Parameter Provider
                        
                        </td>
                </tr>
            
                <tr>
                    <td>customUiUrl</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URL for the custom configuration UI for the parameter provider.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>annotationData</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The annotation data for the parameter provider. This is how the custom UI relays configuration to the parameter provider.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>validationErrors</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Gets the validation errors from the parameter provider. These validation errors represent the problems with the parameter provider that must be resolved before it can be scheduled to run.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>validationStatus</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether the Parameter Provider is valid, invalid, or still in the process of validating (i.e., it is unknown whether or not the Parameter Provider is valid)
                         Allowable values: VALID, INVALID, VALIDATING
                        </td>
                </tr>
            
                <tr>
                    <td>extensionMissing</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the underlying extension is missing.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "versionedComponentId": "value"<span class="comma">,</span>
    "parentGroupId": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "type": "value"<span class="comma">,</span>
    "bundle": <span class="nested collapsed"><span class="nested-id hidden">BundleDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "comments": "value"<span class="comma">,</span>
    "persistsState": true<span class="comma">,</span>
    "restricted": true<span class="comma">,</span>
    "deprecated": true<span class="comma">,</span>
    "multipleVersionsAvailable": true<span class="comma">,</span>
    "properties": <span class="open-object">&#123;
        "name": "value"
    &#125;</span><span class="comma">,</span>
    "descriptors": <span class="open-object">&#123;
        "name": <span class="nested collapsed"><span class="nested-id hidden">PropertyDescriptorDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>
    &#125;</span><span class="comma">,</span>
    "parameterGroupConfigurations": [<span class="nested collapsed"><span class="nested-id hidden">ParameterGroupConfigurationEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "affectedComponents": [<span class="nested collapsed"><span class="nested-id hidden">AffectedComponentEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "parameterStatus": [<span class="nested collapsed"><span class="nested-id hidden">ParameterStatusDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "referencingParameterContexts": [<span class="nested collapsed"><span class="nested-id hidden">ParameterProviderReferencingComponentEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "customUiUrl": "value"<span class="comma">,</span>
    "annotationData": "value"<span class="comma">,</span>
    "validationErrors": ["value"]<span class="comma">,</span>
    "validationStatus": "value"<span class="comma">,</span>
    "extensionMissing": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ParameterProviderEntity" class="type hidden">
    <h3>ParameterProviderEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for futures requests to the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bulletins</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BulletinEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bulletins for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>component</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ParameterProviderDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "bulletins": [<span class="nested collapsed"><span class="nested-id hidden">BulletinEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "component": <span class="nested collapsed"><span class="nested-id hidden">ParameterProviderDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ParameterProviderParameterApplicationEntity" class="type hidden">
    <h3>ParameterProviderParameterApplicationEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the parameter provider.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parameterGroupConfigurations</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ParameterGroupConfigurationEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Configuration for the fetched Parameter Groups
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "parameterGroupConfigurations": [<span class="nested collapsed"><span class="nested-id hidden">ParameterGroupConfigurationEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ParameterProviderParameterFetchEntity" class="type hidden">
    <h3>ParameterProviderParameterFetchEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the parameter provider.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ParameterProviderReference" class="type hidden">
    <h3>ParameterProviderReference</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>identifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The identifier of the parameter provider
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the parameter provider
                        
                        </td>
                </tr>
            
                <tr>
                    <td>type</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The fully qualified name of the parameter provider class.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bundle</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">Bundle</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The details of the artifact that bundled this parameter provider.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "identifier": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "type": "value"<span class="comma">,</span>
    "bundle": <span class="nested collapsed"><span class="nested-id hidden">Bundle</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ParameterProviderReferencingComponentDTO" class="type hidden">
    <h3>ParameterProviderReferencingComponentDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component referencing a parameter provider.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the component referencing a parameter provider.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ParameterProviderReferencingComponentEntity" class="type hidden">
    <h3>ParameterProviderReferencingComponentEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for futures requests to the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bulletins</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BulletinEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bulletins for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>component</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ParameterProviderReferencingComponentDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "bulletins": [<span class="nested collapsed"><span class="nested-id hidden">BulletinEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "component": <span class="nested collapsed"><span class="nested-id hidden">ParameterProviderReferencingComponentDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ParameterProviderReferencingComponentsEntity" class="type hidden">
    <h3>ParameterProviderReferencingComponentsEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>parameterProviderReferencingComponents</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ParameterProviderReferencingComponentEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "parameterProviderReferencingComponents": [<span class="nested collapsed"><span class="nested-id hidden">ParameterProviderReferencingComponentEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ParameterProviderTypesEntity" class="type hidden">
    <h3>ParameterProviderTypesEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>parameterProviderTypes</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">DocumentedTypeDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "parameterProviderTypes": [<span class="nested collapsed"><span class="nested-id hidden">DocumentedTypeDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ParameterProvidersEntity" class="type hidden">
    <h3>ParameterProvidersEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>parameterProviders</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ParameterProviderEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "parameterProviders": [<span class="nested collapsed"><span class="nested-id hidden">ParameterProviderEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ParameterStatusDTO" class="type hidden">
    <h3>ParameterStatusDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>parameter</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ParameterEntity</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the Parameter
                        
                        </td>
                </tr>
            
                <tr>
                    <td>status</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates the status of the parameter, compared to the existing parameter context
                         Allowable values: NEW, CHANGED, REMOVED, MISSING_BUT_REFERENCED, UNCHANGED
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "parameter": <span class="nested collapsed"><span class="nested-id hidden">ParameterEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "status": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="PeerDTO" class="type hidden">
    <h3>PeerDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>hostname</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The hostname of this peer.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>port</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The port number of this peer.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>secure</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Returns if this peer connection is secure.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowFileCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of flowFiles this peer holds.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "hostname": "value"<span class="comma">,</span>
    "port": 0<span class="comma">,</span>
    "secure": true<span class="comma">,</span>
    "flowFileCount": 0<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="PeersEntity" class="type hidden">
    <h3>PeersEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>peers</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">PeerDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "peers": [<span class="nested collapsed"><span class="nested-id hidden">PeerDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="PermissionsDTO" class="type hidden">
    <h3>PermissionsDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>canRead</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether the user can read a given resource.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>canWrite</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether the user can write a given resource.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "canRead": true<span class="comma">,</span>
    "canWrite": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="PortDTO" class="type hidden">
    <h3>PortDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionedComponentId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the corresponding component that is under version control
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parentGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of parent process group of this component if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the port.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>comments</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The comments for the port.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>state</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The state of the port.
                         Allowable values: RUNNING, STOPPED, DISABLED
                        </td>
                </tr>
            
                <tr>
                    <td>type</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The type of port.
                         Allowable values: INPUT_PORT, OUTPUT_PORT
                        </td>
                </tr>
            
                <tr>
                    <td>transmitting</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the port has incoming or output connections to a remote NiFi. This is only applicable when the port is allowed to be accessed remotely.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>concurrentlySchedulableTaskCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of tasks that should be concurrently scheduled for the port.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>userAccessControl</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The users that are allowed to access the port.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>groupAccessControl</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The user groups that are allowed to access the port.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>allowRemoteAccess</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether this port can be accessed remotely via Site-to-Site protocol.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>validationErrors</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Gets the validation errors from this port. These validation errors represent the problems with the port that must be resolved before it can be started.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "versionedComponentId": "value"<span class="comma">,</span>
    "parentGroupId": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "comments": "value"<span class="comma">,</span>
    "state": "value"<span class="comma">,</span>
    "type": "value"<span class="comma">,</span>
    "transmitting": true<span class="comma">,</span>
    "concurrentlySchedulableTaskCount": 0<span class="comma">,</span>
    "userAccessControl": ["value"]<span class="comma">,</span>
    "groupAccessControl": ["value"]<span class="comma">,</span>
    "allowRemoteAccess": true<span class="comma">,</span>
    "validationErrors": ["value"]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="PortEntity" class="type hidden">
    <h3>PortEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for futures requests to the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bulletins</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BulletinEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bulletins for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>component</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PortDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>status</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PortStatusDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The status of the port.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>portType</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>operatePermissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component operations.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>allowRemoteAccess</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether this port can be accessed remotely via Site-to-Site protocol.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "bulletins": [<span class="nested collapsed"><span class="nested-id hidden">BulletinEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "component": <span class="nested collapsed"><span class="nested-id hidden">PortDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "status": <span class="nested collapsed"><span class="nested-id hidden">PortStatusDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "portType": "value"<span class="comma">,</span>
    "operatePermissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "allowRemoteAccess": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="PortRunStatusEntity" class="type hidden">
    <h3>PortRunStatusEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>state</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The run status of the Port.
                         Allowable values: RUNNING, STOPPED, DISABLED
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "state": "value"<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="PortStatusDTO" class="type hidden">
    <h3>PortStatusDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the port.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>groupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the parent process group of the port.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the port.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>transmitting</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the port has incoming or outgoing connections to a remote NiFi.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>runStatus</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The run status of the port.
                         Allowable values: Running, Stopped, Validating, Disabled, Invalid
                        </td>
                </tr>
            
                <tr>
                    <td>statsLastRefreshed</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The time the status for the process group was last refreshed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>aggregateSnapshot</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PortStatusSnapshotDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A status snapshot that represents the aggregate stats of all nodes in the cluster. If the NiFi instance is a standalone instance, rather than a cluster, this represents the stats of the single instance.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>nodeSnapshots</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">NodePortStatusSnapshotDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A status snapshot for each node in the cluster. If the NiFi instance is a standalone instance, rather than a cluster, this may be null.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "groupId": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "transmitting": true<span class="comma">,</span>
    "runStatus": "value"<span class="comma">,</span>
    "statsLastRefreshed": "value"<span class="comma">,</span>
    "aggregateSnapshot": <span class="nested collapsed"><span class="nested-id hidden">PortStatusSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "nodeSnapshots": [<span class="nested collapsed"><span class="nested-id hidden">NodePortStatusSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="PortStatusEntity" class="type hidden">
    <h3>PortStatusEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>portStatus</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PortStatusDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>canRead</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether the user can read a given resource.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "portStatus": <span class="nested collapsed"><span class="nested-id hidden">PortStatusDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "canRead": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="PortStatusSnapshotDTO" class="type hidden">
    <h3>PortStatusSnapshotDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the port.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>groupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the parent process group of the port.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the port.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>activeThreadCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The active thread count for the port.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowFilesIn</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of FlowFiles that have been accepted in the last 5 minutes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bytesIn</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The size of hte FlowFiles that have been accepted in the last 5 minutes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>input</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The count/size of flowfiles that have been accepted in the last 5 minutes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowFilesOut</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of FlowFiles that have been processed in the last 5 minutes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bytesOut</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of bytes that have been processed in the last 5 minutes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>output</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The count/size of flowfiles that have been processed in the last 5 minutes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>transmitting</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the port has incoming or outgoing connections to a remote NiFi.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>runStatus</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The run status of the port.
                         Allowable values: Running, Stopped, Validating, Disabled, Invalid
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "groupId": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "activeThreadCount": 0<span class="comma">,</span>
    "flowFilesIn": 0<span class="comma">,</span>
    "bytesIn": 0<span class="comma">,</span>
    "input": "value"<span class="comma">,</span>
    "flowFilesOut": 0<span class="comma">,</span>
    "bytesOut": 0<span class="comma">,</span>
    "output": "value"<span class="comma">,</span>
    "transmitting": true<span class="comma">,</span>
    "runStatus": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="PortStatusSnapshotEntity" class="type hidden">
    <h3>PortStatusSnapshotEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the port.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>portStatusSnapshot</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PortStatusSnapshotDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>canRead</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether the user can read a given resource.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "portStatusSnapshot": <span class="nested collapsed"><span class="nested-id hidden">PortStatusSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "canRead": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="Position" class="type hidden">
    <h3>Position</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>x</td>
                    <td>
                        
                            
                            
                                number (double)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The x coordinate.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>y</td>
                    <td>
                        
                            
                            
                                number (double)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The y coordinate.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "x": 0.0<span class="comma">,</span>
    "y": 0.0<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="PositionDTO" class="type hidden">
    <h3>PositionDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>x</td>
                    <td>
                        
                            
                            
                                number (double)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The x coordinate.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>y</td>
                    <td>
                        
                            
                            
                                number (double)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The y coordinate.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "x": 0.0<span class="comma">,</span>
    "y": 0.0<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="PreviousValueDTO" class="type hidden">
    <h3>PreviousValueDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>previousValue</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The previous value.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>timestamp</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp when the value was modified.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>userIdentity</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The user who changed the previous value.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "previousValue": "value"<span class="comma">,</span>
    "timestamp": "value"<span class="comma">,</span>
    "userIdentity": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="PrioritizerTypesEntity" class="type hidden">
    <h3>PrioritizerTypesEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>prioritizerTypes</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">DocumentedTypeDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "prioritizerTypes": [<span class="nested collapsed"><span class="nested-id hidden">DocumentedTypeDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProcessGroupDTO" class="type hidden">
    <h3>ProcessGroupDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionedComponentId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the corresponding component that is under version control
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parentGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of parent process group of this component if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>comments</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The comments for the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>variables</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The variables that are configured for the Process Group. Note that this map contains only those variables that are defined on this Process Group and not any variables that are defined in the parent Process Group, etc. I.e., this Map will not contain all variables that are accessible by components in this Process Group by rather only the variables that are defined for this Process Group itself.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionControlInformation</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">VersionControlInformationDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Version Control information that indicates which Flow Registry, and where in the Flow Registry, this Process Group is tracking to; or null if this Process Group is not under version control
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parameterContext</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ParameterContextReferenceEntity</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Parameter Context that this Process Group is bound to.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowfileConcurrency</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The FlowFile Concurrency for this Process Group.
                         Allowable values: UNBOUNDED, SINGLE_FLOWFILE_PER_NODE, SINGLE_BATCH_PER_NODE
                        </td>
                </tr>
            
                <tr>
                    <td>flowfileOutboundPolicy</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Outbound Policy that is used for determining how FlowFiles should be transferred out of the Process Group.
                         Allowable values: STREAM_WHEN_AVAILABLE, BATCH_OUTPUT
                        </td>
                </tr>
            
                <tr>
                    <td>defaultFlowFileExpiration</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The default FlowFile Expiration for this Process Group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>defaultBackPressureObjectThreshold</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Default value used in this Process Group for the maximum number of objects that can be queued before back pressure is applied.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>defaultBackPressureDataSizeThreshold</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Default value used in this Process Group for the maximum data size of objects that can be queued before back pressure is applied.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>runningCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of running components in this process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>stoppedCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of stopped components in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>invalidCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of invalid components in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disabledCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of disabled components in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>activeRemotePortCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of active remote ports in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inactiveRemotePortCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of inactive remote ports in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>upToDateCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of up to date versioned process groups in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>locallyModifiedCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of locally modified versioned process groups in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>staleCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of stale versioned process groups in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>locallyModifiedAndStaleCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of locally modified and stale versioned process groups in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>syncFailureCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of versioned process groups in the process group that are unable to sync to a registry.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>localInputPortCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of local input ports in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>localOutputPortCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of local output ports in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>publicInputPortCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of public input ports in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>publicOutputPortCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of public output ports in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>contents</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">FlowSnippetDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The contents of this process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inputPortCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of input ports in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>outputPortCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of output ports in the process group.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "versionedComponentId": "value"<span class="comma">,</span>
    "parentGroupId": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "comments": "value"<span class="comma">,</span>
    "variables": <span class="open-object">&#123;
        "name": "value"
    &#125;</span><span class="comma">,</span>
    "versionControlInformation": <span class="nested collapsed"><span class="nested-id hidden">VersionControlInformationDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "parameterContext": <span class="nested collapsed"><span class="nested-id hidden">ParameterContextReferenceEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "flowfileConcurrency": "value"<span class="comma">,</span>
    "flowfileOutboundPolicy": "value"<span class="comma">,</span>
    "defaultFlowFileExpiration": "value"<span class="comma">,</span>
    "defaultBackPressureObjectThreshold": 0<span class="comma">,</span>
    "defaultBackPressureDataSizeThreshold": "value"<span class="comma">,</span>
    "runningCount": 0<span class="comma">,</span>
    "stoppedCount": 0<span class="comma">,</span>
    "invalidCount": 0<span class="comma">,</span>
    "disabledCount": 0<span class="comma">,</span>
    "activeRemotePortCount": 0<span class="comma">,</span>
    "inactiveRemotePortCount": 0<span class="comma">,</span>
    "upToDateCount": 0<span class="comma">,</span>
    "locallyModifiedCount": 0<span class="comma">,</span>
    "staleCount": 0<span class="comma">,</span>
    "locallyModifiedAndStaleCount": 0<span class="comma">,</span>
    "syncFailureCount": 0<span class="comma">,</span>
    "localInputPortCount": 0<span class="comma">,</span>
    "localOutputPortCount": 0<span class="comma">,</span>
    "publicInputPortCount": 0<span class="comma">,</span>
    "publicOutputPortCount": 0<span class="comma">,</span>
    "contents": <span class="nested collapsed"><span class="nested-id hidden">FlowSnippetDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "inputPortCount": 0<span class="comma">,</span>
    "outputPortCount": 0<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProcessGroupEntity" class="type hidden">
    <h3>ProcessGroupEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for futures requests to the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bulletins</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BulletinEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bulletins for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>component</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ProcessGroupDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>status</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ProcessGroupStatusDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The status of the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionedFlowSnapshot</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RegisteredFlowSnapshot</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Returns the Versioned Flow that describes the contents of the Versioned Flow to be imported
                        
                        </td>
                </tr>
            
                <tr>
                    <td>runningCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of running components in this process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>stoppedCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of stopped components in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>invalidCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of invalid components in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disabledCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of disabled components in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>activeRemotePortCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of active remote ports in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inactiveRemotePortCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of inactive remote ports in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionedFlowState</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The current state of the Process Group, as it relates to the Versioned Flow
                         Allowable values: LOCALLY_MODIFIED, STALE, LOCALLY_MODIFIED_AND_STALE, UP_TO_DATE, SYNC_FAILURE
                        </td>
                </tr>
            
                <tr>
                    <td>upToDateCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of up to date versioned process groups in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>locallyModifiedCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of locally modified versioned process groups in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>staleCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of stale versioned process groups in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>locallyModifiedAndStaleCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of locally modified and stale versioned process groups in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>syncFailureCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of versioned process groups in the process group that are unable to sync to a registry.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>localInputPortCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of local input ports in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>localOutputPortCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of local output ports in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>publicInputPortCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of public input ports in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>publicOutputPortCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of public output ports in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parameterContext</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ParameterContextReferenceEntity</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Parameter Context, or null if no Parameter Context has been bound to the Process Group
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inputPortCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of input ports in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>outputPortCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of output ports in the process group.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "bulletins": [<span class="nested collapsed"><span class="nested-id hidden">BulletinEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "component": <span class="nested collapsed"><span class="nested-id hidden">ProcessGroupDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "status": <span class="nested collapsed"><span class="nested-id hidden">ProcessGroupStatusDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "versionedFlowSnapshot": <span class="nested collapsed"><span class="nested-id hidden">RegisteredFlowSnapshot</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "runningCount": 0<span class="comma">,</span>
    "stoppedCount": 0<span class="comma">,</span>
    "invalidCount": 0<span class="comma">,</span>
    "disabledCount": 0<span class="comma">,</span>
    "activeRemotePortCount": 0<span class="comma">,</span>
    "inactiveRemotePortCount": 0<span class="comma">,</span>
    "versionedFlowState": "value"<span class="comma">,</span>
    "upToDateCount": 0<span class="comma">,</span>
    "locallyModifiedCount": 0<span class="comma">,</span>
    "staleCount": 0<span class="comma">,</span>
    "locallyModifiedAndStaleCount": 0<span class="comma">,</span>
    "syncFailureCount": 0<span class="comma">,</span>
    "localInputPortCount": 0<span class="comma">,</span>
    "localOutputPortCount": 0<span class="comma">,</span>
    "publicInputPortCount": 0<span class="comma">,</span>
    "publicOutputPortCount": 0<span class="comma">,</span>
    "parameterContext": <span class="nested collapsed"><span class="nested-id hidden">ParameterContextReferenceEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "inputPortCount": 0<span class="comma">,</span>
    "outputPortCount": 0<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProcessGroupFlowDTO" class="type hidden">
    <h3>ProcessGroupFlowDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for futures requests to the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parentGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of parent process group of this component if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parameterContext</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ParameterContextReferenceEntity</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Parameter Context, or null if no Parameter Context has been bound to the Process Group
                        
                        </td>
                </tr>
            
                <tr>
                    <td>breadcrumb</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">FlowBreadcrumbEntity</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The breadcrumb of the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flow</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">FlowDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The flow structure starting at this Process Group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>lastRefreshed</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The time the flow for the process group was last refreshed.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "parentGroupId": "value"<span class="comma">,</span>
    "parameterContext": <span class="nested collapsed"><span class="nested-id hidden">ParameterContextReferenceEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "breadcrumb": <span class="nested collapsed"><span class="nested-id hidden">FlowBreadcrumbEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "flow": <span class="nested collapsed"><span class="nested-id hidden">FlowDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "lastRefreshed": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProcessGroupFlowEntity" class="type hidden">
    <h3>ProcessGroupFlowEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The access policy for this process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>processGroupFlow</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ProcessGroupFlowDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "processGroupFlow": <span class="nested collapsed"><span class="nested-id hidden">ProcessGroupFlowDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProcessGroupImportEntity" class="type hidden">
    <h3>ProcessGroupImportEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>processGroupRevision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Revision for the Process Group
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionedFlowSnapshot</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RegisteredFlowSnapshot</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Versioned Flow Snapshot to import
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "processGroupRevision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "versionedFlowSnapshot": <span class="nested collapsed"><span class="nested-id hidden">RegisteredFlowSnapshot</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProcessGroupNameDTO" class="type hidden">
    <h3>ProcessGroupNameDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the Process Group
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the Process Group, or the ID of the Process Group if the user does not have the READ policy for the Process Group
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProcessGroupReplaceRequestDTO" class="type hidden">
    <h3>ProcessGroupReplaceRequestDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>requestId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The unique ID of this request.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>processGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The unique ID of the Process Group being updated
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for future requests to this drop request.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>lastUpdated</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The last time this request was updated.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>complete</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not this request has completed
                        
                        </td>
                </tr>
            
                <tr>
                    <td>failureReason</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>An explanation of why this request failed, or null if this request has not failed
                        
                        </td>
                </tr>
            
                <tr>
                    <td>percentCompleted</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The percentage complete for the request, between 0 and 100
                        
                        </td>
                </tr>
            
                <tr>
                    <td>state</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The state of the request
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "requestId": "value"<span class="comma">,</span>
    "processGroupId": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "lastUpdated": "value"<span class="comma">,</span>
    "complete": true<span class="comma">,</span>
    "failureReason": "value"<span class="comma">,</span>
    "percentCompleted": 0<span class="comma">,</span>
    "state": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProcessGroupReplaceRequestEntity" class="type hidden">
    <h3>ProcessGroupReplaceRequestEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>processGroupRevision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for the Process Group being updated.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>request</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ProcessGroupReplaceRequestDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Process Group Change Request
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionedFlowSnapshot</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RegisteredFlowSnapshot</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Returns the Versioned Flow to replace with
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "processGroupRevision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "request": <span class="nested collapsed"><span class="nested-id hidden">ProcessGroupReplaceRequestDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "versionedFlowSnapshot": <span class="nested collapsed"><span class="nested-id hidden">RegisteredFlowSnapshot</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProcessGroupStatusDTO" class="type hidden">
    <h3>ProcessGroupStatusDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the Process Group
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the Process Group
                        
                        </td>
                </tr>
            
                <tr>
                    <td>statsLastRefreshed</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The time the status for the process group was last refreshed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>aggregateSnapshot</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ProcessGroupStatusSnapshotDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The aggregate status of all nodes in the cluster
                        
                        </td>
                </tr>
            
                <tr>
                    <td>nodeSnapshots</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">NodeProcessGroupStatusSnapshotDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The status reported by each node in the cluster. If the NiFi instance is a standalone instance, rather than a clustered instance, this value may be null.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "statsLastRefreshed": "value"<span class="comma">,</span>
    "aggregateSnapshot": <span class="nested collapsed"><span class="nested-id hidden">ProcessGroupStatusSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "nodeSnapshots": [<span class="nested collapsed"><span class="nested-id hidden">NodeProcessGroupStatusSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProcessGroupStatusEntity" class="type hidden">
    <h3>ProcessGroupStatusEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>processGroupStatus</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ProcessGroupStatusDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>canRead</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether the user can read a given resource.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "processGroupStatus": <span class="nested collapsed"><span class="nested-id hidden">ProcessGroupStatusDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "canRead": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProcessGroupStatusSnapshotDTO" class="type hidden">
    <h3>ProcessGroupStatusSnapshotDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of this process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>connectionStatusSnapshots</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ConnectionStatusSnapshotEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The status of all connections in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>processorStatusSnapshots</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ProcessorStatusSnapshotEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The status of all processors in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>processGroupStatusSnapshots</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ProcessGroupStatusSnapshotEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The status of all process groups in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>remoteProcessGroupStatusSnapshots</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">RemoteProcessGroupStatusSnapshotEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The status of all remote process groups in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inputPortStatusSnapshots</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">PortStatusSnapshotEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The status of all input ports in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>outputPortStatusSnapshots</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">PortStatusSnapshotEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The status of all output ports in the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionedFlowState</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The current state of the Process Group, as it relates to the Versioned Flow
                         Allowable values: LOCALLY_MODIFIED, STALE, LOCALLY_MODIFIED_AND_STALE, UP_TO_DATE, SYNC_FAILURE
                        </td>
                </tr>
            
                <tr>
                    <td>flowFilesIn</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of FlowFiles that have come into this ProcessGroup in the last 5 minutes
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bytesIn</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of bytes that have come into this ProcessGroup in the last 5 minutes
                        
                        </td>
                </tr>
            
                <tr>
                    <td>input</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The input count/size for the process group in the last 5 minutes (pretty printed).
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowFilesQueued</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of FlowFiles that are queued up in this ProcessGroup right now
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bytesQueued</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of bytes that are queued up in this ProcessGroup right now
                        
                        </td>
                </tr>
            
                <tr>
                    <td>queued</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The count/size that is queued in the the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>queuedCount</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The count that is queued for the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>queuedSize</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The size that is queued for the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bytesRead</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of bytes read by components in this ProcessGroup in the last 5 minutes
                        
                        </td>
                </tr>
            
                <tr>
                    <td>read</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of bytes read in the last 5 minutes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bytesWritten</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of bytes written by components in this ProcessGroup in the last 5 minutes
                        
                        </td>
                </tr>
            
                <tr>
                    <td>written</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of bytes written in the last 5 minutes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowFilesOut</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of FlowFiles transferred out of this ProcessGroup in the last 5 minutes
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bytesOut</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of bytes transferred out of this ProcessGroup in the last 5 minutes
                        
                        </td>
                </tr>
            
                <tr>
                    <td>output</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The output count/size for the process group in the last 5 minutes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowFilesTransferred</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of FlowFiles transferred in this ProcessGroup in the last 5 minutes
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bytesTransferred</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of bytes transferred in this ProcessGroup in the last 5 minutes
                        
                        </td>
                </tr>
            
                <tr>
                    <td>transferred</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The count/size transferred to/from queues in the process group in the last 5 minutes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bytesReceived</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of bytes received from external sources by components within this ProcessGroup in the last 5 minutes
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowFilesReceived</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of FlowFiles received from external sources by components within this ProcessGroup in the last 5 minutes
                        
                        </td>
                </tr>
            
                <tr>
                    <td>received</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The count/size sent to the process group in the last 5 minutes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bytesSent</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of bytes sent to an external sink by components within this ProcessGroup in the last 5 minutes
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowFilesSent</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of FlowFiles sent to an external sink by components within this ProcessGroup in the last 5 minutes
                        
                        </td>
                </tr>
            
                <tr>
                    <td>sent</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The count/size sent from this process group in the last 5 minutes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>activeThreadCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The active thread count for this process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>terminatedThreadCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of threads currently terminated for the process group.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "connectionStatusSnapshots": [<span class="nested collapsed"><span class="nested-id hidden">ConnectionStatusSnapshotEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "processorStatusSnapshots": [<span class="nested collapsed"><span class="nested-id hidden">ProcessorStatusSnapshotEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "processGroupStatusSnapshots": [<span class="nested collapsed"><span class="nested-id hidden">ProcessGroupStatusSnapshotEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "remoteProcessGroupStatusSnapshots": [<span class="nested collapsed"><span class="nested-id hidden">RemoteProcessGroupStatusSnapshotEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "inputPortStatusSnapshots": [<span class="nested collapsed"><span class="nested-id hidden">PortStatusSnapshotEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "outputPortStatusSnapshots": [<span class="nested collapsed"><span class="nested-id hidden">PortStatusSnapshotEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "versionedFlowState": "value"<span class="comma">,</span>
    "flowFilesIn": 0<span class="comma">,</span>
    "bytesIn": 0<span class="comma">,</span>
    "input": "value"<span class="comma">,</span>
    "flowFilesQueued": 0<span class="comma">,</span>
    "bytesQueued": 0<span class="comma">,</span>
    "queued": "value"<span class="comma">,</span>
    "queuedCount": "value"<span class="comma">,</span>
    "queuedSize": "value"<span class="comma">,</span>
    "bytesRead": 0<span class="comma">,</span>
    "read": "value"<span class="comma">,</span>
    "bytesWritten": 0<span class="comma">,</span>
    "written": "value"<span class="comma">,</span>
    "flowFilesOut": 0<span class="comma">,</span>
    "bytesOut": 0<span class="comma">,</span>
    "output": "value"<span class="comma">,</span>
    "flowFilesTransferred": 0<span class="comma">,</span>
    "bytesTransferred": 0<span class="comma">,</span>
    "transferred": "value"<span class="comma">,</span>
    "bytesReceived": 0<span class="comma">,</span>
    "flowFilesReceived": 0<span class="comma">,</span>
    "received": "value"<span class="comma">,</span>
    "bytesSent": 0<span class="comma">,</span>
    "flowFilesSent": 0<span class="comma">,</span>
    "sent": "value"<span class="comma">,</span>
    "activeThreadCount": 0<span class="comma">,</span>
    "terminatedThreadCount": 0<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProcessGroupStatusSnapshotEntity" class="type hidden">
    <h3>ProcessGroupStatusSnapshotEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>processGroupStatusSnapshot</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ProcessGroupStatusSnapshotDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>canRead</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether the user can read a given resource.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "processGroupStatusSnapshot": <span class="nested collapsed"><span class="nested-id hidden">ProcessGroupStatusSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "canRead": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProcessGroupsEntity" class="type hidden">
    <h3>ProcessGroupsEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>processGroups</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ProcessGroupEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "processGroups": [<span class="nested collapsed"><span class="nested-id hidden">ProcessGroupEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProcessorConfigDTO" class="type hidden">
    <h3>ProcessorConfigDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>properties</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The properties for the processor. Properties whose value is not set will only contain the property name.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>descriptors</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Descriptors for the processor's properties.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>sensitiveDynamicPropertyNames</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Set of sensitive dynamic property names
                        
                        </td>
                </tr>
            
                <tr>
                    <td>schedulingPeriod</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The frequency with which to schedule the processor. The format of the value will depend on th value of schedulingStrategy.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>schedulingStrategy</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indcates whether the prcessor should be scheduled to run in event or timer driven mode.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>executionNode</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates the node where the process will execute.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>penaltyDuration</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The amount of time that is used when the process penalizes a flowfile.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>yieldDuration</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The amount of time that must elapse before this processor is scheduled again after yielding.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bulletinLevel</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The level at which the processor will report bulletins.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>runDurationMillis</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The run duration for the processor in milliseconds.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>concurrentlySchedulableTaskCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of tasks that should be concurrently schedule for the processor. If the processor doesn't allow parallol processing then any positive input will be ignored.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>autoTerminatedRelationships</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The names of all relationships that cause a flow file to be terminated if the relationship is not connected elsewhere. This property differs from the 'isAutoTerminate' property of the RelationshipDTO in that the RelationshipDTO is meant to depict the current configuration, whereas this property can be set in a DTO when updating a Processor in order to change which Relationships should be auto-terminated.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>comments</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The comments for the processor.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>customUiUrl</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URL for the processor's custom configuration UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>lossTolerant</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the processor is loss tolerant.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>annotationData</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The annotation data for the processor used to relay configuration between a custom UI and the procesosr.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>defaultConcurrentTasks</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Maps default values for concurrent tasks for each applicable scheduling strategy.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>defaultSchedulingPeriod</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Maps default values for scheduling period for each applicable scheduling strategy.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>retryCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Overall number of retries.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>retriedRelationships</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>All the relationships should be retried.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>backoffMechanism</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Determines whether the FlowFile should be penalized or the processor should be yielded between retries.
                         Allowable values: PENALIZE_FLOWFILE, YIELD_PROCESSOR
                        </td>
                </tr>
            
                <tr>
                    <td>maxBackoffPeriod</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Maximum amount of time to be waited during a retry period.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "properties": <span class="open-object">&#123;
        "name": "value"
    &#125;</span><span class="comma">,</span>
    "descriptors": <span class="open-object">&#123;
        "name": <span class="nested collapsed"><span class="nested-id hidden">PropertyDescriptorDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>
    &#125;</span><span class="comma">,</span>
    "sensitiveDynamicPropertyNames": ["value"]<span class="comma">,</span>
    "schedulingPeriod": "value"<span class="comma">,</span>
    "schedulingStrategy": "value"<span class="comma">,</span>
    "executionNode": "value"<span class="comma">,</span>
    "penaltyDuration": "value"<span class="comma">,</span>
    "yieldDuration": "value"<span class="comma">,</span>
    "bulletinLevel": "value"<span class="comma">,</span>
    "runDurationMillis": 0<span class="comma">,</span>
    "concurrentlySchedulableTaskCount": 0<span class="comma">,</span>
    "autoTerminatedRelationships": ["value"]<span class="comma">,</span>
    "comments": "value"<span class="comma">,</span>
    "customUiUrl": "value"<span class="comma">,</span>
    "lossTolerant": true<span class="comma">,</span>
    "annotationData": "value"<span class="comma">,</span>
    "defaultConcurrentTasks": <span class="open-object">&#123;
        "name": "value"
    &#125;</span><span class="comma">,</span>
    "defaultSchedulingPeriod": <span class="open-object">&#123;
        "name": "value"
    &#125;</span><span class="comma">,</span>
    "retryCount": 0<span class="comma">,</span>
    "retriedRelationships": ["value"]<span class="comma">,</span>
    "backoffMechanism": "value"<span class="comma">,</span>
    "maxBackoffPeriod": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProcessorDTO" class="type hidden">
    <h3>ProcessorDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionedComponentId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the corresponding component that is under version control
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parentGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of parent process group of this component if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the processor.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>type</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The type of the processor.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bundle</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">BundleDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The details of the artifact that bundled this processor type.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>state</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The state of the processor
                         Allowable values: RUNNING, STOPPED, DISABLED
                        </td>
                </tr>
            
                <tr>
                    <td>style</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Styles for the processor (background-color : #eee).
                        
                        </td>
                </tr>
            
                <tr>
                    <td>relationships</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">RelationshipDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The available relationships that the processor currently supports.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>description</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The description of the processor.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>supportsParallelProcessing</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the processor supports parallel processing.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>supportsEventDriven</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the processor supports event driven scheduling.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>supportsBatching</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the processor supports batching. This makes the run duration settings available.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>supportsSensitiveDynamicProperties</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the processor supports sensitive dynamic properties.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>persistsState</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the processor persists state.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>restricted</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the processor requires elevated privileges.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>deprecated</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the processor has been deprecated.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>executionNodeRestricted</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates if the execution node of a processor is restricted to run only on the primary node
                        
                        </td>
                </tr>
            
                <tr>
                    <td>multipleVersionsAvailable</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the processor has multiple versions available.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inputRequirement</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The input requirement for this processor.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>config</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ProcessorConfigDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The configuration details for the processor. These details will be included in a response if the verbose flag is included in a request.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>validationErrors</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The validation errors for the processor. These validation errors represent the problems with the processor that must be resolved before it can be started.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>validationStatus</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether the Processor is valid, invalid, or still in the process of validating (i.e., it is unknown whether or not the Processor is valid)
                         Allowable values: VALID, INVALID, VALIDATING
                        </td>
                </tr>
            
                <tr>
                    <td>extensionMissing</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the underlying extension is missing.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "versionedComponentId": "value"<span class="comma">,</span>
    "parentGroupId": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "type": "value"<span class="comma">,</span>
    "bundle": <span class="nested collapsed"><span class="nested-id hidden">BundleDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "state": "value"<span class="comma">,</span>
    "style": <span class="open-object">&#123;
        "name": "value"
    &#125;</span><span class="comma">,</span>
    "relationships": [<span class="nested collapsed"><span class="nested-id hidden">RelationshipDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "description": "value"<span class="comma">,</span>
    "supportsParallelProcessing": true<span class="comma">,</span>
    "supportsEventDriven": true<span class="comma">,</span>
    "supportsBatching": true<span class="comma">,</span>
    "supportsSensitiveDynamicProperties": true<span class="comma">,</span>
    "persistsState": true<span class="comma">,</span>
    "restricted": true<span class="comma">,</span>
    "deprecated": true<span class="comma">,</span>
    "executionNodeRestricted": true<span class="comma">,</span>
    "multipleVersionsAvailable": true<span class="comma">,</span>
    "inputRequirement": "value"<span class="comma">,</span>
    "config": <span class="nested collapsed"><span class="nested-id hidden">ProcessorConfigDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "validationErrors": ["value"]<span class="comma">,</span>
    "validationStatus": "value"<span class="comma">,</span>
    "extensionMissing": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProcessorDefinition" class="type hidden">
    <h3>ProcessorDefinition</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>group</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The group name of the bundle that provides the referenced type.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>artifact</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The artifact name of the bundle that provides the referenced type.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>version</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The version of the bundle that provides the referenced type.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>type</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>required</td>
                    <td>The fully-qualified class type
                        
                        </td>
                </tr>
            
                <tr>
                    <td>typeDescription</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The description of the type.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>buildInfo</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">BuildInfo</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The build metadata for this component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>providedApiImplementations</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">DefinedType</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>If this type represents a provider for an interface, this lists the APIs it implements
                        
                        </td>
                </tr>
            
                <tr>
                    <td>tags</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The tags associated with this type
                        
                        </td>
                </tr>
            
                <tr>
                    <td>deprecated</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not the component has been deprecated
                        
                        </td>
                </tr>
            
                <tr>
                    <td>deprecationReason</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>If this component has been deprecated, this optional field can be used to provide an explanation
                        
                        </td>
                </tr>
            
                <tr>
                    <td>restricted</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not the component has a general restriction
                        
                        </td>
                </tr>
            
                <tr>
                    <td>restrictedExplanation</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>An optional description of the general restriction
                        
                        </td>
                </tr>
            
                <tr>
                    <td>explicitRestrictions</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">Restriction</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Explicit restrictions that indicate a require permission to use the component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>stateful</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">Stateful</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>propertyDescriptors</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Descriptions of configuration properties applicable to this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>supportsDynamicProperties</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not this component makes use of dynamic (user-set) properties.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inputRequirement</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Any input requirements this processor has.
                         Allowable values: INPUT_REQUIRED, INPUT_ALLOWED, INPUT_FORBIDDEN
                        </td>
                </tr>
            
                <tr>
                    <td>supportedRelationships</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">Relationship</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The supported relationships for this processor.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>supportsDynamicRelationships</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not this processor supports dynamic relationships.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>triggerSerially</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not this processor should be triggered serially (i.e. no concurrent execution).
                        
                        </td>
                </tr>
            
                <tr>
                    <td>triggerWhenEmpty</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not this processor should be triggered when incoming queues are empty.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>triggerWhenAnyDestinationAvailable</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not this processor should be triggered when any destination queue has room.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>supportsBatching</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not this processor supports batching. If a Processor uses this annotation, it allows the Framework to batch calls to session commits, as well as allowing the Framework to return the same session multiple times.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>supportsEventDriven</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not this processor supports event driven scheduling. Indicates to the framework that the Processor is eligible to be scheduled to run based on the occurrence of an "Event" (e.g., when a FlowFile is enqueued in an incoming Connection), rather than being triggered periodically.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>primaryNodeOnly</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not this processor should be scheduled only on the primary node in a cluster.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>sideEffectFree</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not this processor is considered side-effect free. Side-effect free indicate that the processor's operations on FlowFiles can be safely repeated across process sessions.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>supportedSchedulingStrategies</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The supported scheduling strategies, such as TIME_DRIVER, CRON, or EVENT_DRIVEN.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>defaultSchedulingStrategy</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The default scheduling strategy for the processor.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>defaultConcurrentTasksBySchedulingStrategy</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The default concurrent tasks for each scheduling strategy.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>defaultSchedulingPeriodBySchedulingStrategy</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The default scheduling period for each scheduling strategy. The scheduling period is expected to be a time period, such as "30 sec".
                        
                        </td>
                </tr>
            
                <tr>
                    <td>defaultPenaltyDuration</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The default penalty duration as a time period, such as "30 sec".
                        
                        </td>
                </tr>
            
                <tr>
                    <td>defaultYieldDuration</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The default yield duration as a time period, such as "1 sec".
                        
                        </td>
                </tr>
            
                <tr>
                    <td>defaultBulletinLevel</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The default bulletin level, such as WARN, INFO, DEBUG, etc.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "group": "value"<span class="comma">,</span>
    "artifact": "value"<span class="comma">,</span>
    "version": "value"<span class="comma">,</span>
    "type": "value"<span class="comma">,</span>
    "typeDescription": "value"<span class="comma">,</span>
    "buildInfo": <span class="nested collapsed"><span class="nested-id hidden">BuildInfo</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "providedApiImplementations": [<span class="nested collapsed"><span class="nested-id hidden">DefinedType</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "tags": ["value"]<span class="comma">,</span>
    "deprecated": true<span class="comma">,</span>
    "deprecationReason": "value"<span class="comma">,</span>
    "restricted": true<span class="comma">,</span>
    "restrictedExplanation": "value"<span class="comma">,</span>
    "explicitRestrictions": [<span class="nested collapsed"><span class="nested-id hidden">Restriction</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "stateful": <span class="nested collapsed"><span class="nested-id hidden">Stateful</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "propertyDescriptors": <span class="open-object">&#123;
        "name": <span class="nested collapsed"><span class="nested-id hidden">PropertyDescriptor</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>
    &#125;</span><span class="comma">,</span>
    "supportsDynamicProperties": true<span class="comma">,</span>
    "inputRequirement": "value"<span class="comma">,</span>
    "supportedRelationships": [<span class="nested collapsed"><span class="nested-id hidden">Relationship</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "supportsDynamicRelationships": true<span class="comma">,</span>
    "triggerSerially": true<span class="comma">,</span>
    "triggerWhenEmpty": true<span class="comma">,</span>
    "triggerWhenAnyDestinationAvailable": true<span class="comma">,</span>
    "supportsBatching": true<span class="comma">,</span>
    "supportsEventDriven": true<span class="comma">,</span>
    "primaryNodeOnly": true<span class="comma">,</span>
    "sideEffectFree": true<span class="comma">,</span>
    "supportedSchedulingStrategies": ["value"]<span class="comma">,</span>
    "defaultSchedulingStrategy": "value"<span class="comma">,</span>
    "defaultConcurrentTasksBySchedulingStrategy": <span class="open-object">&#123;
        "name": 0
    &#125;</span><span class="comma">,</span>
    "defaultSchedulingPeriodBySchedulingStrategy": <span class="open-object">&#123;
        "name": "value"
    &#125;</span><span class="comma">,</span>
    "defaultPenaltyDuration": "value"<span class="comma">,</span>
    "defaultYieldDuration": "value"<span class="comma">,</span>
    "defaultBulletinLevel": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProcessorDiagnosticsDTO" class="type hidden">
    <h3>ProcessorDiagnosticsDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>processor</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ProcessorDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Information about the Processor for which the Diagnostic Report is generated
                        
                        </td>
                </tr>
            
                <tr>
                    <td>processorStatus</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ProcessorStatusDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Status for the Processor for which the Diagnostic Report is generated
                        
                        </td>
                </tr>
            
                <tr>
                    <td>referencedControllerServices</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ControllerServiceDiagnosticsDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Diagnostic Information about all Controller Services that the Processor is referencing
                        
                        </td>
                </tr>
            
                <tr>
                    <td>incomingConnections</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ConnectionDiagnosticsDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Diagnostic Information about all incoming Connections
                        
                        </td>
                </tr>
            
                <tr>
                    <td>outgoingConnections</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ConnectionDiagnosticsDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Diagnostic Information about all outgoing Connections
                        
                        </td>
                </tr>
            
                <tr>
                    <td>jvmDiagnostics</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">JVMDiagnosticsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Diagnostic Information about the JVM and system-level diagnostics
                        
                        </td>
                </tr>
            
                <tr>
                    <td>threadDumps</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ThreadDumpDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Thread Dumps that were taken of the threads that are active in the Processor
                        
                        </td>
                </tr>
            
                <tr>
                    <td>classLoaderDiagnostics</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ClassLoaderDiagnosticsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Information about the Controller Service's Class Loader
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "processor": <span class="nested collapsed"><span class="nested-id hidden">ProcessorDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "processorStatus": <span class="nested collapsed"><span class="nested-id hidden">ProcessorStatusDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "referencedControllerServices": [<span class="nested collapsed"><span class="nested-id hidden">ControllerServiceDiagnosticsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "incomingConnections": [<span class="nested collapsed"><span class="nested-id hidden">ConnectionDiagnosticsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "outgoingConnections": [<span class="nested collapsed"><span class="nested-id hidden">ConnectionDiagnosticsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "jvmDiagnostics": <span class="nested collapsed"><span class="nested-id hidden">JVMDiagnosticsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "threadDumps": [<span class="nested collapsed"><span class="nested-id hidden">ThreadDumpDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "classLoaderDiagnostics": <span class="nested collapsed"><span class="nested-id hidden">ClassLoaderDiagnosticsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProcessorDiagnosticsEntity" class="type hidden">
    <h3>ProcessorDiagnosticsEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for futures requests to the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bulletins</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BulletinEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bulletins for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>component</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ProcessorDiagnosticsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Processor Diagnostics
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "bulletins": [<span class="nested collapsed"><span class="nested-id hidden">BulletinEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "component": <span class="nested collapsed"><span class="nested-id hidden">ProcessorDiagnosticsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProcessorEntity" class="type hidden">
    <h3>ProcessorEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for futures requests to the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bulletins</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BulletinEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bulletins for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>component</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ProcessorDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inputRequirement</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The input requirement for this processor.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>status</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ProcessorStatusDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>operatePermissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component operations.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "bulletins": [<span class="nested collapsed"><span class="nested-id hidden">BulletinEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "component": <span class="nested collapsed"><span class="nested-id hidden">ProcessorDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "inputRequirement": "value"<span class="comma">,</span>
    "status": <span class="nested collapsed"><span class="nested-id hidden">ProcessorStatusDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "operatePermissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProcessorRunStatusDetailsDTO" class="type hidden">
    <h3>ProcessorRunStatusDetailsDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the processor
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the processor
                        
                        </td>
                </tr>
            
                <tr>
                    <td>runStatus</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The run status of the processor
                         Allowable values: Running, Stopped, Invalid, Validating, Disabled
                        </td>
                </tr>
            
                <tr>
                    <td>validationErrors</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The processor's validation errors
                        
                        </td>
                </tr>
            
                <tr>
                    <td>activeThreadCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The current number of threads that the processor is currently using
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "runStatus": "value"<span class="comma">,</span>
    "validationErrors": ["value"]<span class="comma">,</span>
    "activeThreadCount": 0<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProcessorRunStatusDetailsEntity" class="type hidden">
    <h3>ProcessorRunStatusDetailsEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for the Processor.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for the Processor.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>runStatusDetails</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ProcessorRunStatusDetailsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The details of a Processor's run status
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "runStatusDetails": <span class="nested collapsed"><span class="nested-id hidden">ProcessorRunStatusDetailsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProcessorRunStatusEntity" class="type hidden">
    <h3>ProcessorRunStatusEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>state</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The run status of the Processor.
                         Allowable values: RUNNING, STOPPED, DISABLED, RUN_ONCE
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "state": "value"<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProcessorStatusDTO" class="type hidden">
    <h3>ProcessorStatusDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>groupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The unique ID of the process group that the Processor belongs to
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The unique ID of the Processor
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the Processor
                        
                        </td>
                </tr>
            
                <tr>
                    <td>type</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The type of the Processor
                        
                        </td>
                </tr>
            
                <tr>
                    <td>runStatus</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The run status of the Processor
                         Allowable values: Running, Stopped, Validating, Disabled, Invalid
                        </td>
                </tr>
            
                <tr>
                    <td>statsLastRefreshed</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp of when the stats were last refreshed
                        
                        </td>
                </tr>
            
                <tr>
                    <td>aggregateSnapshot</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ProcessorStatusSnapshotDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A status snapshot that represents the aggregate stats of all nodes in the cluster. If the NiFi instance is a standalone instance, rather than a cluster, this represents the stats of the single instance.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>nodeSnapshots</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">NodeProcessorStatusSnapshotDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A status snapshot for each node in the cluster. If the NiFi instance is a standalone instance, rather than a cluster, this may be null.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "groupId": "value"<span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "type": "value"<span class="comma">,</span>
    "runStatus": "value"<span class="comma">,</span>
    "statsLastRefreshed": "value"<span class="comma">,</span>
    "aggregateSnapshot": <span class="nested collapsed"><span class="nested-id hidden">ProcessorStatusSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "nodeSnapshots": [<span class="nested collapsed"><span class="nested-id hidden">NodeProcessorStatusSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProcessorStatusEntity" class="type hidden">
    <h3>ProcessorStatusEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>processorStatus</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ProcessorStatusDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>canRead</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether the user can read a given resource.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "processorStatus": <span class="nested collapsed"><span class="nested-id hidden">ProcessorStatusDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "canRead": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProcessorStatusSnapshotDTO" class="type hidden">
    <h3>ProcessorStatusSnapshotDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the processor.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>groupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the parent process group to which the processor belongs.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the prcessor.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>type</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The type of the processor.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>runStatus</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The state of the processor.
                         Allowable values: Running, Stopped, Validating, Disabled, Invalid
                        </td>
                </tr>
            
                <tr>
                    <td>executionNode</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates the node where the process will execute.
                         Allowable values: ALL, PRIMARY
                        </td>
                </tr>
            
                <tr>
                    <td>bytesRead</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of bytes read by this Processor in the last 5 mintues
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bytesWritten</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of bytes written by this Processor in the last 5 minutes
                        
                        </td>
                </tr>
            
                <tr>
                    <td>read</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of bytes read in the last 5 minutes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>written</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of bytes written in the last 5 minutes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowFilesIn</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of FlowFiles that have been accepted in the last 5 minutes
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bytesIn</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The size of the FlowFiles that have been accepted in the last 5 minutes
                        
                        </td>
                </tr>
            
                <tr>
                    <td>input</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The count/size of flowfiles that have been accepted in the last 5 minutes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowFilesOut</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of FlowFiles transferred to a Connection in the last 5 minutes
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bytesOut</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The size of the FlowFiles transferred to a Connection in the last 5 minutes
                        
                        </td>
                </tr>
            
                <tr>
                    <td>output</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The count/size of flowfiles that have been processed in the last 5 minutes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>taskCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of times this Processor has run in the last 5 minutes
                        
                        </td>
                </tr>
            
                <tr>
                    <td>tasksDurationNanos</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of nanoseconds that this Processor has spent running in the last 5 minutes
                        
                        </td>
                </tr>
            
                <tr>
                    <td>tasks</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The total number of task this connectable has completed over the last 5 minutes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>tasksDuration</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The total duration of all tasks for this connectable over the last 5 minutes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>activeThreadCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of threads currently executing in the processor.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>terminatedThreadCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of threads currently terminated for the processor.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "groupId": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "type": "value"<span class="comma">,</span>
    "runStatus": "value"<span class="comma">,</span>
    "executionNode": "value"<span class="comma">,</span>
    "bytesRead": 0<span class="comma">,</span>
    "bytesWritten": 0<span class="comma">,</span>
    "read": "value"<span class="comma">,</span>
    "written": "value"<span class="comma">,</span>
    "flowFilesIn": 0<span class="comma">,</span>
    "bytesIn": 0<span class="comma">,</span>
    "input": "value"<span class="comma">,</span>
    "flowFilesOut": 0<span class="comma">,</span>
    "bytesOut": 0<span class="comma">,</span>
    "output": "value"<span class="comma">,</span>
    "taskCount": 0<span class="comma">,</span>
    "tasksDurationNanos": 0<span class="comma">,</span>
    "tasks": "value"<span class="comma">,</span>
    "tasksDuration": "value"<span class="comma">,</span>
    "activeThreadCount": 0<span class="comma">,</span>
    "terminatedThreadCount": 0<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProcessorStatusSnapshotEntity" class="type hidden">
    <h3>ProcessorStatusSnapshotEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the processor.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>processorStatusSnapshot</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ProcessorStatusSnapshotDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>canRead</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether the user can read a given resource.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "processorStatusSnapshot": <span class="nested collapsed"><span class="nested-id hidden">ProcessorStatusSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "canRead": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProcessorTypesEntity" class="type hidden">
    <h3>ProcessorTypesEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>processorTypes</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">DocumentedTypeDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "processorTypes": [<span class="nested collapsed"><span class="nested-id hidden">DocumentedTypeDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProcessorsEntity" class="type hidden">
    <h3>ProcessorsEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>processors</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ProcessorEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "processors": [<span class="nested collapsed"><span class="nested-id hidden">ProcessorEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProcessorsRunStatusDetailsEntity" class="type hidden">
    <h3>ProcessorsRunStatusDetailsEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>runStatusDetails</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ProcessorRunStatusDetailsEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "runStatusDetails": [<span class="nested collapsed"><span class="nested-id hidden">ProcessorRunStatusDetailsEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="PropertyAllowableValue" class="type hidden">
    <h3>PropertyAllowableValue</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>value</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>required</td>
                    <td>The internal value
                        
                        </td>
                </tr>
            
                <tr>
                    <td>displayName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The display name of the value, if different from the internal value
                        
                        </td>
                </tr>
            
                <tr>
                    <td>description</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The description of the value, e.g., the behavior it produces.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "value": "value"<span class="comma">,</span>
    "displayName": "value"<span class="comma">,</span>
    "description": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="PropertyDependency" class="type hidden">
    <h3>PropertyDependency</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>propertyName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the property that is depended upon
                        
                        </td>
                </tr>
            
                <tr>
                    <td>propertyDisplayName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the property that is depended upon
                        
                        </td>
                </tr>
            
                <tr>
                    <td>dependentValues</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The values that satisfy the dependency
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "propertyName": "value"<span class="comma">,</span>
    "propertyDisplayName": "value"<span class="comma">,</span>
    "dependentValues": ["value"]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="PropertyDependencyDTO" class="type hidden">
    <h3>PropertyDependencyDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>propertyName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the property that is being depended upon
                        
                        </td>
                </tr>
            
                <tr>
                    <td>dependentValues</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The values for the property that satisfies the dependency, or null if the dependency is satisfied by the presence of any value for the associated property name
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "propertyName": "value"<span class="comma">,</span>
    "dependentValues": ["value"]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="PropertyDescriptor" class="type hidden">
    <h3>PropertyDescriptor</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>required</td>
                    <td>The name of the property key
                        
                        </td>
                </tr>
            
                <tr>
                    <td>displayName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The display name of the property key, if different from the name
                        
                        </td>
                </tr>
            
                <tr>
                    <td>description</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The description of what the property does
                        
                        </td>
                </tr>
            
                <tr>
                    <td>allowableValues</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">PropertyAllowableValue</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A list of the allowable values for the property
                        
                        </td>
                </tr>
            
                <tr>
                    <td>defaultValue</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The default value if a user-set value is not specified
                        
                        </td>
                </tr>
            
                <tr>
                    <td>required</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not  the property is required for the component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>sensitive</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not  the value of the property is considered sensitive (e.g., passwords and keys)
                        
                        </td>
                </tr>
            
                <tr>
                    <td>expressionLanguageScope</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The scope of expression language supported by this property
                         Allowable values: NONE, VARIABLE_REGISTRY, FLOWFILE_ATTRIBUTES
                        </td>
                </tr>
            
                <tr>
                    <td>expressionLanguageScopeDescription</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The description of the expression language scope supported by this property
                        
                         This property is read only.</td>
                </tr>
            
                <tr>
                    <td>typeProvidedByValue</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">DefinedType</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates that this property is for selecting a controller service of the specified type
                        
                        </td>
                </tr>
            
                <tr>
                    <td>validRegex</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A regular expression that can be used to validate the value of this property
                        
                        </td>
                </tr>
            
                <tr>
                    <td>validator</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Name of the validator used for this property descriptor
                        
                        </td>
                </tr>
            
                <tr>
                    <td>dynamic</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not the descriptor is for a dynamically added property
                        
                        </td>
                </tr>
            
                <tr>
                    <td>resourceDefinition</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PropertyResourceDefinition</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates that this property references external resources
                        
                        </td>
                </tr>
            
                <tr>
                    <td>dependencies</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">PropertyDependency</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The dependencies that this property has on other properties
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "name": "value"<span class="comma">,</span>
    "displayName": "value"<span class="comma">,</span>
    "description": "value"<span class="comma">,</span>
    "allowableValues": [<span class="nested collapsed"><span class="nested-id hidden">PropertyAllowableValue</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "defaultValue": "value"<span class="comma">,</span>
    "required": true<span class="comma">,</span>
    "sensitive": true<span class="comma">,</span>
    "expressionLanguageScope": "value"<span class="comma">,</span>
    "expressionLanguageScopeDescription": "value"<span class="comma">,</span>
    "typeProvidedByValue": <span class="nested collapsed"><span class="nested-id hidden">DefinedType</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "validRegex": "value"<span class="comma">,</span>
    "validator": "value"<span class="comma">,</span>
    "dynamic": true<span class="comma">,</span>
    "resourceDefinition": <span class="nested collapsed"><span class="nested-id hidden">PropertyResourceDefinition</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "dependencies": [<span class="nested collapsed"><span class="nested-id hidden">PropertyDependency</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="PropertyDescriptorDTO" class="type hidden">
    <h3>PropertyDescriptorDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name for the property.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>displayName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The human readable name for the property.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>description</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The description for the property. Used to relay additional details to a user or provide a mechanism of documenting intent.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>defaultValue</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The default value for the property.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>allowableValues</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">AllowableValueEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Allowable values for the property. If empty then the allowed values are not constrained.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>required</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the property is required.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>sensitive</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the property is sensitive and protected whenever stored or represented.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>dynamic</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the property is dynamic (user-defined).
                        
                        </td>
                </tr>
            
                <tr>
                    <td>supportsEl</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the property supports expression language.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>expressionLanguageScope</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Scope of the Expression Language evaluation for the property.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>identifiesControllerService</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>If the property identifies a controller service this returns the fully qualified type.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>identifiesControllerServiceBundle</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">BundleDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>If the property identifies a controller service this returns the bundle of the type, null otherwise.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>dependencies</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">PropertyDependencyDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A list of dependencies that must be met in order for this Property to be relevant. If any of these dependencies is not met, the property described by this Property Descriptor is not relevant.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "name": "value"<span class="comma">,</span>
    "displayName": "value"<span class="comma">,</span>
    "description": "value"<span class="comma">,</span>
    "defaultValue": "value"<span class="comma">,</span>
    "allowableValues": [<span class="nested collapsed"><span class="nested-id hidden">AllowableValueEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "required": true<span class="comma">,</span>
    "sensitive": true<span class="comma">,</span>
    "dynamic": true<span class="comma">,</span>
    "supportsEl": true<span class="comma">,</span>
    "expressionLanguageScope": "value"<span class="comma">,</span>
    "identifiesControllerService": "value"<span class="comma">,</span>
    "identifiesControllerServiceBundle": <span class="nested collapsed"><span class="nested-id hidden">BundleDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "dependencies": [<span class="nested collapsed"><span class="nested-id hidden">PropertyDependencyDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="PropertyDescriptorEntity" class="type hidden">
    <h3>PropertyDescriptorEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>propertyDescriptor</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PropertyDescriptorDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "propertyDescriptor": <span class="nested collapsed"><span class="nested-id hidden">PropertyDescriptorDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="PropertyHistoryDTO" class="type hidden">
    <h3>PropertyHistoryDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>previousValues</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">PreviousValueDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Previous values for a given property.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "previousValues": [<span class="nested collapsed"><span class="nested-id hidden">PreviousValueDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="PropertyResourceDefinition" class="type hidden">
    <h3>PropertyResourceDefinition</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>cardinality</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The cardinality of the resource definition (i.e. single or multiple)
                         Allowable values: SINGLE, MULTIPLE
                        </td>
                </tr>
            
                <tr>
                    <td>resourceTypes</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The types of resources that can be referenced
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "cardinality": "value"<span class="comma">,</span>
    "resourceTypes": ["value"]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProvenanceDTO" class="type hidden">
    <h3>ProvenanceDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the provenance query.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for this query. Used for obtaining/deleting the request at a later time
                        
                        </td>
                </tr>
            
                <tr>
                    <td>submissionTime</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp when the query was submitted.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>expiration</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp when the query will expire.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>percentCompleted</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The current percent complete.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>finished</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the query has finished.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>request</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ProvenanceRequestDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The provenance request.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>results</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ProvenanceResultsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The provenance results.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "submissionTime": "value"<span class="comma">,</span>
    "expiration": "value"<span class="comma">,</span>
    "percentCompleted": 0<span class="comma">,</span>
    "finished": true<span class="comma">,</span>
    "request": <span class="nested collapsed"><span class="nested-id hidden">ProvenanceRequestDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "results": <span class="nested collapsed"><span class="nested-id hidden">ProvenanceResultsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProvenanceEntity" class="type hidden">
    <h3>ProvenanceEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>provenance</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ProvenanceDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "provenance": <span class="nested collapsed"><span class="nested-id hidden">ProvenanceDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProvenanceEventDTO" class="type hidden">
    <h3>ProvenanceEventDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The event uuid.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>eventId</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The event id. This is a one up number thats unique per node.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>eventTime</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp of the event.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>eventDuration</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The event duration in milliseconds.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>lineageDuration</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The duration since the lineage began, in milliseconds.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>eventType</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The type of the event.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowFileUuid</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The uuid of the flowfile for the event.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>fileSize</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The size of the flowfile for the event.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>fileSizeBytes</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The size of the flowfile in bytes for the event.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>clusterNodeId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The identifier for the node where the event originated.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>clusterNodeAddress</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The label for the node where the event originated.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>groupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the group that the component resides in. If the component is no longer in the flow, the group id will not be set.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>componentId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component that generated the event.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>componentType</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The type of the component that generated the event.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>componentName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the component that generated the event.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>sourceSystemFlowFileId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The source system flowfile id.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>alternateIdentifierUri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The alternate identifier uri for the fileflow for the event.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>attributes</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">AttributeDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The attributes of the flowfile for the event.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parentUuids</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The parent uuids for the event.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>childUuids</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The child uuids for the event.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>transitUri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The source/destination system uri if the event was a RECEIVE/SEND.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>relationship</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The relationship to which the flowfile was routed if the event is of type ROUTE.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>details</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The event details.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>contentEqual</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the input and output content claim is the same.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inputContentAvailable</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the input content is still available.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inputContentClaimSection</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The section in which the input content claim lives.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inputContentClaimContainer</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The container in which the input content claim lives.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inputContentClaimIdentifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The identifier of the input content claim.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inputContentClaimOffset</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The offset into the input content claim where the flowfiles content begins.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inputContentClaimFileSize</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The file size of the input content claim formatted.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inputContentClaimFileSizeBytes</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The file size of the intput content claim in bytes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>outputContentAvailable</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the output content is still available.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>outputContentClaimSection</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The section in which the output content claim lives.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>outputContentClaimContainer</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The container in which the output content claim lives.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>outputContentClaimIdentifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The identifier of the output content claim.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>outputContentClaimOffset</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The offset into the output content claim where the flowfiles content begins.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>outputContentClaimFileSize</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The file size of the output content claim formatted.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>outputContentClaimFileSizeBytes</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The file size of the output content claim in bytes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>replayAvailable</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not replay is available.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>replayExplanation</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Explanation as to why replay is unavailable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>sourceConnectionIdentifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The identifier of the queue/connection from which the flowfile was pulled to genereate this event. May be null if the queue/connection is unknown or the flowfile was generated from this event.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "eventId": 0<span class="comma">,</span>
    "eventTime": "value"<span class="comma">,</span>
    "eventDuration": 0<span class="comma">,</span>
    "lineageDuration": 0<span class="comma">,</span>
    "eventType": "value"<span class="comma">,</span>
    "flowFileUuid": "value"<span class="comma">,</span>
    "fileSize": "value"<span class="comma">,</span>
    "fileSizeBytes": 0<span class="comma">,</span>
    "clusterNodeId": "value"<span class="comma">,</span>
    "clusterNodeAddress": "value"<span class="comma">,</span>
    "groupId": "value"<span class="comma">,</span>
    "componentId": "value"<span class="comma">,</span>
    "componentType": "value"<span class="comma">,</span>
    "componentName": "value"<span class="comma">,</span>
    "sourceSystemFlowFileId": "value"<span class="comma">,</span>
    "alternateIdentifierUri": "value"<span class="comma">,</span>
    "attributes": [<span class="nested collapsed"><span class="nested-id hidden">AttributeDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "parentUuids": ["value"]<span class="comma">,</span>
    "childUuids": ["value"]<span class="comma">,</span>
    "transitUri": "value"<span class="comma">,</span>
    "relationship": "value"<span class="comma">,</span>
    "details": "value"<span class="comma">,</span>
    "contentEqual": true<span class="comma">,</span>
    "inputContentAvailable": true<span class="comma">,</span>
    "inputContentClaimSection": "value"<span class="comma">,</span>
    "inputContentClaimContainer": "value"<span class="comma">,</span>
    "inputContentClaimIdentifier": "value"<span class="comma">,</span>
    "inputContentClaimOffset": 0<span class="comma">,</span>
    "inputContentClaimFileSize": "value"<span class="comma">,</span>
    "inputContentClaimFileSizeBytes": 0<span class="comma">,</span>
    "outputContentAvailable": true<span class="comma">,</span>
    "outputContentClaimSection": "value"<span class="comma">,</span>
    "outputContentClaimContainer": "value"<span class="comma">,</span>
    "outputContentClaimIdentifier": "value"<span class="comma">,</span>
    "outputContentClaimOffset": 0<span class="comma">,</span>
    "outputContentClaimFileSize": "value"<span class="comma">,</span>
    "outputContentClaimFileSizeBytes": 0<span class="comma">,</span>
    "replayAvailable": true<span class="comma">,</span>
    "replayExplanation": "value"<span class="comma">,</span>
    "sourceConnectionIdentifier": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProvenanceEventEntity" class="type hidden">
    <h3>ProvenanceEventEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>provenanceEvent</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ProvenanceEventDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "provenanceEvent": <span class="nested collapsed"><span class="nested-id hidden">ProvenanceEventDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProvenanceLinkDTO" class="type hidden">
    <h3>ProvenanceLinkDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>sourceId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The source node id of the link.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>targetId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The target node id of the link.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowFileUuid</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The flowfile uuid that traversed the link.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>timestamp</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp of the link (based on the destination).
                        
                        </td>
                </tr>
            
                <tr>
                    <td>millis</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp of this link in milliseconds.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "sourceId": "value"<span class="comma">,</span>
    "targetId": "value"<span class="comma">,</span>
    "flowFileUuid": "value"<span class="comma">,</span>
    "timestamp": "value"<span class="comma">,</span>
    "millis": 0<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProvenanceNodeDTO" class="type hidden">
    <h3>ProvenanceNodeDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the node.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowFileUuid</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The uuid of the flowfile associated with the provenance event.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parentUuids</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The uuid of the parent flowfiles of the provenance event.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>childUuids</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The uuid of the childrent flowfiles of the provenance event.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>clusterNodeIdentifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The identifier of the node that this event/flowfile originated from.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>type</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The type of the node.
                         Allowable values: FLOWFILE, EVENT
                        </td>
                </tr>
            
                <tr>
                    <td>eventType</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>If the type is EVENT, this is the type of event.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>millis</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp of the node in milliseconds.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>timestamp</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp of the node formatted.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "flowFileUuid": "value"<span class="comma">,</span>
    "parentUuids": ["value"]<span class="comma">,</span>
    "childUuids": ["value"]<span class="comma">,</span>
    "clusterNodeIdentifier": "value"<span class="comma">,</span>
    "type": "value"<span class="comma">,</span>
    "eventType": "value"<span class="comma">,</span>
    "millis": 0<span class="comma">,</span>
    "timestamp": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProvenanceOptionsDTO" class="type hidden">
    <h3>ProvenanceOptionsDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>searchableFields</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ProvenanceSearchableFieldDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The available searchable field for the NiFi.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "searchableFields": [<span class="nested collapsed"><span class="nested-id hidden">ProvenanceSearchableFieldDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProvenanceOptionsEntity" class="type hidden">
    <h3>ProvenanceOptionsEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>provenanceOptions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ProvenanceOptionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "provenanceOptions": <span class="nested collapsed"><span class="nested-id hidden">ProvenanceOptionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProvenanceRequestDTO" class="type hidden">
    <h3>ProvenanceRequestDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>searchTerms</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The search terms used to perform the search.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>clusterNodeId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the node in the cluster where this provenance originated.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>startDate</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The earliest event time to include in the query.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>endDate</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The latest event time to include in the query.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>minimumFileSize</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The minimum file size to include in the query.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>maximumFileSize</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The maximum file size to include in the query.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>maxResults</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The maximum number of results to include.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>summarize</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not to summarize provenance events returned. This property is false by default.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>incrementalResults</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not incremental results are returned. If false, provenance events are only returned once the query completes. This property is true by default.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "searchTerms": <span class="open-object">&#123;
        "name": <span class="nested collapsed"><span class="nested-id hidden">ProvenanceSearchValueDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>
    &#125;</span><span class="comma">,</span>
    "clusterNodeId": "value"<span class="comma">,</span>
    "startDate": "value"<span class="comma">,</span>
    "endDate": "value"<span class="comma">,</span>
    "minimumFileSize": "value"<span class="comma">,</span>
    "maximumFileSize": "value"<span class="comma">,</span>
    "maxResults": 0<span class="comma">,</span>
    "summarize": true<span class="comma">,</span>
    "incrementalResults": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProvenanceResultsDTO" class="type hidden">
    <h3>ProvenanceResultsDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>provenanceEvents</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ProvenanceEventDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The provenance events that matched the search criteria.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>total</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The total number of results formatted.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>totalCount</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The total number of results.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>generated</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Then the search was performed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>oldestEvent</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The oldest event available in the provenance repository.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>timeOffset</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The time offset of the server that's used for event time.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>errors</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Any errors that occurred while performing the provenance request.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "provenanceEvents": [<span class="nested collapsed"><span class="nested-id hidden">ProvenanceEventDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "total": "value"<span class="comma">,</span>
    "totalCount": 0<span class="comma">,</span>
    "generated": "value"<span class="comma">,</span>
    "oldestEvent": "value"<span class="comma">,</span>
    "timeOffset": 0<span class="comma">,</span>
    "errors": ["value"]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProvenanceSearchValueDTO" class="type hidden">
    <h3>ProvenanceSearchValueDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>value</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The search value.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inverse</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Query for all except for search value.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "value": "value"<span class="comma">,</span>
    "inverse": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ProvenanceSearchableFieldDTO" class="type hidden">
    <h3>ProvenanceSearchableFieldDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the searchable field.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>field</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The searchable field.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>label</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The label for the searchable field.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>type</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The type of the searchable field.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "field": "value"<span class="comma">,</span>
    "label": "value"<span class="comma">,</span>
    "type": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="QueueSizeDTO" class="type hidden">
    <h3>QueueSizeDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>byteCount</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The size of objects in a queue.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>objectCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The count of objects in a queue.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "byteCount": 0<span class="comma">,</span>
    "objectCount": 0<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="RegisteredFlow" class="type hidden">
    <h3>RegisteredFlow</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>identifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>description</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bucketIdentifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bucketName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>createdTimestamp</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>lastModifiedTimestamp</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">FlowRegistryPermissions</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionCount</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionInfo</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RegisteredFlowVersionInfo</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "identifier": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "description": "value"<span class="comma">,</span>
    "bucketIdentifier": "value"<span class="comma">,</span>
    "bucketName": "value"<span class="comma">,</span>
    "createdTimestamp": 0<span class="comma">,</span>
    "lastModifiedTimestamp": 0<span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">FlowRegistryPermissions</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "versionCount": 0<span class="comma">,</span>
    "versionInfo": <span class="nested collapsed"><span class="nested-id hidden">RegisteredFlowVersionInfo</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="RegisteredFlowSnapshot" class="type hidden">
    <h3>RegisteredFlowSnapshot</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>snapshotMetadata</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RegisteredFlowSnapshotMetadata</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flow</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RegisteredFlow</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bucket</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">FlowRegistryBucket</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowContents</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">VersionedProcessGroup</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>externalControllerServices</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parameterContexts</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowEncodingVersion</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parameterProviders</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>latest</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "snapshotMetadata": <span class="nested collapsed"><span class="nested-id hidden">RegisteredFlowSnapshotMetadata</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "flow": <span class="nested collapsed"><span class="nested-id hidden">RegisteredFlow</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "bucket": <span class="nested collapsed"><span class="nested-id hidden">FlowRegistryBucket</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "flowContents": <span class="nested collapsed"><span class="nested-id hidden">VersionedProcessGroup</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "externalControllerServices": <span class="open-object">&#123;
        "name": <span class="nested collapsed"><span class="nested-id hidden">ExternalControllerServiceReference</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>
    &#125;</span><span class="comma">,</span>
    "parameterContexts": <span class="open-object">&#123;
        "name": <span class="nested collapsed"><span class="nested-id hidden">VersionedParameterContext</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>
    &#125;</span><span class="comma">,</span>
    "flowEncodingVersion": "value"<span class="comma">,</span>
    "parameterProviders": <span class="open-object">&#123;
        "name": <span class="nested collapsed"><span class="nested-id hidden">ParameterProviderReference</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>
    &#125;</span><span class="comma">,</span>
    "latest": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="RegisteredFlowSnapshotMetadata" class="type hidden">
    <h3>RegisteredFlowSnapshotMetadata</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>bucketIdentifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowIdentifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>version</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>timestamp</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>author</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>comments</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "bucketIdentifier": "value"<span class="comma">,</span>
    "flowIdentifier": "value"<span class="comma">,</span>
    "version": 0<span class="comma">,</span>
    "timestamp": 0<span class="comma">,</span>
    "author": "value"<span class="comma">,</span>
    "comments": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="RegisteredFlowVersionInfo" class="type hidden">
    <h3>RegisteredFlowVersionInfo</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>version</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "version": 0<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="Relationship" class="type hidden">
    <h3>Relationship</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the relationship
                        
                        </td>
                </tr>
            
                <tr>
                    <td>description</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The description of the relationship
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "name": "value"<span class="comma">,</span>
    "description": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="RelationshipDTO" class="type hidden">
    <h3>RelationshipDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The relationship name.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>description</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The relationship description.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>autoTerminate</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not flowfiles sent to this relationship should auto terminate.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>retry</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not flowfiles sent to this relationship should retry.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "name": "value"<span class="comma">,</span>
    "description": "value"<span class="comma">,</span>
    "autoTerminate": true<span class="comma">,</span>
    "retry": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="RemotePortRunStatusEntity" class="type hidden">
    <h3>RemotePortRunStatusEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>state</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The run status of the RemotePort.
                         Allowable values: TRANSMITTING, STOPPED
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "state": "value"<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="RemoteProcessGroupContentsDTO" class="type hidden">
    <h3>RemoteProcessGroupContentsDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>inputPorts</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">RemoteProcessGroupPortDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The input ports to which data can be sent.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>outputPorts</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">RemoteProcessGroupPortDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The output ports from which data can be retrieved.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "inputPorts": [<span class="nested collapsed"><span class="nested-id hidden">RemoteProcessGroupPortDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "outputPorts": [<span class="nested collapsed"><span class="nested-id hidden">RemoteProcessGroupPortDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="RemoteProcessGroupDTO" class="type hidden">
    <h3>RemoteProcessGroupDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionedComponentId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the corresponding component that is under version control
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parentGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of parent process group of this component if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>targetUri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The target URI of the remote process group. If target uri is not set, but uris are set, then returns the first url in the urls. If neither target uri nor uris are set, then returns null.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>targetUris</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The target URI of the remote process group. If target uris is not set but target uri is set, then returns a collection containing the single target uri. If neither target uris nor uris are set, then returns null.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>targetSecure</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the target is running securely.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the remote process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>comments</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The comments for the remote process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>communicationsTimeout</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The time period used for the timeout when communicating with the target.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>yieldDuration</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>When yielding, this amount of time must elapse before the remote process group is scheduled again.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>transportProtocol</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>localNetworkInterface</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The local network interface to send/receive data. If not specified, any local address is used. If clustered, all nodes must have an interface with this identifier.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>proxyHost</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>proxyPort</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>proxyUser</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>proxyPassword</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>authorizationIssues</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Any remote authorization issues for the remote process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>validationErrors</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The validation errors for the remote process group. These validation errors represent the problems with the remote process group that must be resolved before it can transmit.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>transmitting</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the remote process group is actively transmitting.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inputPortCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of remote input ports currently available on the target.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>outputPortCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of remote output ports currently available on the target.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>activeRemoteInputPortCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of active remote input ports.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inactiveRemoteInputPortCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of inactive remote input ports.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>activeRemoteOutputPortCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of active remote output ports.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inactiveRemoteOutputPortCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of inactive remote output ports.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowRefreshed</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp when this remote process group was last refreshed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>contents</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RemoteProcessGroupContentsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The contents of the remote process group. Will contain available input/output ports.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "versionedComponentId": "value"<span class="comma">,</span>
    "parentGroupId": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "targetUri": "value"<span class="comma">,</span>
    "targetUris": "value"<span class="comma">,</span>
    "targetSecure": true<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "comments": "value"<span class="comma">,</span>
    "communicationsTimeout": "value"<span class="comma">,</span>
    "yieldDuration": "value"<span class="comma">,</span>
    "transportProtocol": "value"<span class="comma">,</span>
    "localNetworkInterface": "value"<span class="comma">,</span>
    "proxyHost": "value"<span class="comma">,</span>
    "proxyPort": 0<span class="comma">,</span>
    "proxyUser": "value"<span class="comma">,</span>
    "proxyPassword": "value"<span class="comma">,</span>
    "authorizationIssues": ["value"]<span class="comma">,</span>
    "validationErrors": ["value"]<span class="comma">,</span>
    "transmitting": true<span class="comma">,</span>
    "inputPortCount": 0<span class="comma">,</span>
    "outputPortCount": 0<span class="comma">,</span>
    "activeRemoteInputPortCount": 0<span class="comma">,</span>
    "inactiveRemoteInputPortCount": 0<span class="comma">,</span>
    "activeRemoteOutputPortCount": 0<span class="comma">,</span>
    "inactiveRemoteOutputPortCount": 0<span class="comma">,</span>
    "flowRefreshed": "value"<span class="comma">,</span>
    "contents": <span class="nested collapsed"><span class="nested-id hidden">RemoteProcessGroupContentsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="RemoteProcessGroupEntity" class="type hidden">
    <h3>RemoteProcessGroupEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for futures requests to the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bulletins</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BulletinEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bulletins for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>component</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RemoteProcessGroupDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>status</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RemoteProcessGroupStatusDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The status of the remote process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inputPortCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of remote input ports currently available on the target.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>outputPortCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of remote output ports currently available on the target.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>operatePermissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component operations.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "bulletins": [<span class="nested collapsed"><span class="nested-id hidden">BulletinEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "component": <span class="nested collapsed"><span class="nested-id hidden">RemoteProcessGroupDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "status": <span class="nested collapsed"><span class="nested-id hidden">RemoteProcessGroupStatusDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "inputPortCount": 0<span class="comma">,</span>
    "outputPortCount": 0<span class="comma">,</span>
    "operatePermissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="RemoteProcessGroupPortDTO" class="type hidden">
    <h3>RemoteProcessGroupPortDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the port.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>targetId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the target port.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionedComponentId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the corresponding component that is under version control
                        
                        </td>
                </tr>
            
                <tr>
                    <td>groupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the remote process group that the port resides in.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the target port.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>comments</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The comments as configured on the target port.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>concurrentlySchedulableTaskCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of task that may transmit flowfiles to the target port concurrently.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>transmitting</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the remote port is configured for transmission.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>useCompression</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the flowfiles are compressed when sent to the target port.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>exists</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the target port exists.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>targetRunning</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the target port is running.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>connected</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the port has either an incoming or outgoing connection.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>batchSettings</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">BatchSettingsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The batch settings for data transmission.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "targetId": "value"<span class="comma">,</span>
    "versionedComponentId": "value"<span class="comma">,</span>
    "groupId": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "comments": "value"<span class="comma">,</span>
    "concurrentlySchedulableTaskCount": 0<span class="comma">,</span>
    "transmitting": true<span class="comma">,</span>
    "useCompression": true<span class="comma">,</span>
    "exists": true<span class="comma">,</span>
    "targetRunning": true<span class="comma">,</span>
    "connected": true<span class="comma">,</span>
    "batchSettings": <span class="nested collapsed"><span class="nested-id hidden">BatchSettingsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="RemoteProcessGroupPortEntity" class="type hidden">
    <h3>RemoteProcessGroupPortEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for futures requests to the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bulletins</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BulletinEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bulletins for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>remoteProcessGroupPort</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RemoteProcessGroupPortDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>operatePermissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component operations.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "bulletins": [<span class="nested collapsed"><span class="nested-id hidden">BulletinEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "remoteProcessGroupPort": <span class="nested collapsed"><span class="nested-id hidden">RemoteProcessGroupPortDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "operatePermissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="RemoteProcessGroupStatusDTO" class="type hidden">
    <h3>RemoteProcessGroupStatusDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>groupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The unique ID of the process group that the Processor belongs to
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The unique ID of the Processor
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the remote process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>targetUri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI of the target system.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>transmissionStatus</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The transmission status of the remote process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>statsLastRefreshed</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The time the status for the process group was last refreshed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>validationStatus</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether the component is valid, invalid, or still in the process of validating (i.e., it is unknown whether or not the component is valid)
                         Allowable values: VALID, INVALID, VALIDATING
                        </td>
                </tr>
            
                <tr>
                    <td>aggregateSnapshot</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RemoteProcessGroupStatusSnapshotDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A status snapshot that represents the aggregate stats of all nodes in the cluster. If the NiFi instance is a standalone instance, rather than a cluster, this represents the stats of the single instance.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>nodeSnapshots</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">NodeRemoteProcessGroupStatusSnapshotDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A status snapshot for each node in the cluster. If the NiFi instance is a standalone instance, rather than a cluster, this may be null.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "groupId": "value"<span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "targetUri": "value"<span class="comma">,</span>
    "transmissionStatus": "value"<span class="comma">,</span>
    "statsLastRefreshed": "value"<span class="comma">,</span>
    "validationStatus": "value"<span class="comma">,</span>
    "aggregateSnapshot": <span class="nested collapsed"><span class="nested-id hidden">RemoteProcessGroupStatusSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "nodeSnapshots": [<span class="nested collapsed"><span class="nested-id hidden">NodeRemoteProcessGroupStatusSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="RemoteProcessGroupStatusEntity" class="type hidden">
    <h3>RemoteProcessGroupStatusEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>remoteProcessGroupStatus</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RemoteProcessGroupStatusDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>canRead</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether the user can read a given resource.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "remoteProcessGroupStatus": <span class="nested collapsed"><span class="nested-id hidden">RemoteProcessGroupStatusDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "canRead": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="RemoteProcessGroupStatusSnapshotDTO" class="type hidden">
    <h3>RemoteProcessGroupStatusSnapshotDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the remote process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>groupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the parent process group the remote process group resides in.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the remote process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>targetUri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI of the target system.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>transmissionStatus</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The transmission status of the remote process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>activeThreadCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of active threads for the remote process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowFilesSent</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of FlowFiles sent to the remote process group in the last 5 minutes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bytesSent</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The size of the FlowFiles sent to the remote process group in the last 5 minutes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>sent</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The count/size of the flowfiles sent to the remote process group in the last 5 minutes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowFilesReceived</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of FlowFiles received from the remote process group in the last 5 minutes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bytesReceived</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The size of the FlowFiles received from the remote process group in the last 5 minutes.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>received</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The count/size of the flowfiles received from the remote process group in the last 5 minutes.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "groupId": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "targetUri": "value"<span class="comma">,</span>
    "transmissionStatus": "value"<span class="comma">,</span>
    "activeThreadCount": 0<span class="comma">,</span>
    "flowFilesSent": 0<span class="comma">,</span>
    "bytesSent": 0<span class="comma">,</span>
    "sent": "value"<span class="comma">,</span>
    "flowFilesReceived": 0<span class="comma">,</span>
    "bytesReceived": 0<span class="comma">,</span>
    "received": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="RemoteProcessGroupStatusSnapshotEntity" class="type hidden">
    <h3>RemoteProcessGroupStatusSnapshotEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the remote process group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>remoteProcessGroupStatusSnapshot</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RemoteProcessGroupStatusSnapshotDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>canRead</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether the user can read a given resource.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "remoteProcessGroupStatusSnapshot": <span class="nested collapsed"><span class="nested-id hidden">RemoteProcessGroupStatusSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "canRead": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="RemoteProcessGroupsEntity" class="type hidden">
    <h3>RemoteProcessGroupsEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>remoteProcessGroups</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">RemoteProcessGroupEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "remoteProcessGroups": [<span class="nested collapsed"><span class="nested-id hidden">RemoteProcessGroupEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="RemoteQueuePartitionDTO" class="type hidden">
    <h3>RemoteQueuePartitionDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>totalFlowFileCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Total number of FlowFiles owned by the Connection
                        
                        </td>
                </tr>
            
                <tr>
                    <td>totalByteCount</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Total number of bytes that make up the content for the FlowFiles owned by this Connection
                        
                        </td>
                </tr>
            
                <tr>
                    <td>activeQueueFlowFileCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Total number of FlowFiles that exist in the Connection's Active Queue, immediately available to be offered up to a component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>activeQueueByteCount</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Total number of bytes that make up the content for the FlowFiles that are present in the Connection's Active Queue
                        
                        </td>
                </tr>
            
                <tr>
                    <td>swapFlowFileCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The total number of FlowFiles that are swapped out for this Connection
                        
                        </td>
                </tr>
            
                <tr>
                    <td>swapByteCount</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Total number of bytes that make up the content for the FlowFiles that are swapped out to disk for the Connection
                        
                        </td>
                </tr>
            
                <tr>
                    <td>swapFiles</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of Swap Files that exist for this Connection
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inFlightFlowFileCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of In-Flight FlowFiles for this Connection. These are FlowFiles that belong to the connection but are currently being operated on by a Processor, Port, etc.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inFlightByteCount</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number bytes that make up the content of the FlowFiles that are In-Flight
                        
                        </td>
                </tr>
            
                <tr>
                    <td>nodeIdentifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Node Identifier that this queue partition is sending to
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "totalFlowFileCount": 0<span class="comma">,</span>
    "totalByteCount": 0<span class="comma">,</span>
    "activeQueueFlowFileCount": 0<span class="comma">,</span>
    "activeQueueByteCount": 0<span class="comma">,</span>
    "swapFlowFileCount": 0<span class="comma">,</span>
    "swapByteCount": 0<span class="comma">,</span>
    "swapFiles": 0<span class="comma">,</span>
    "inFlightFlowFileCount": 0<span class="comma">,</span>
    "inFlightByteCount": 0<span class="comma">,</span>
    "nodeIdentifier": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ReplayLastEventRequestEntity" class="type hidden">
    <h3>ReplayLastEventRequestEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>componentId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The UUID of the component whose last event should be replayed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>nodes</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Which nodes are to replay their last provenance event.
                         Allowable values: ALL, PRIMARY
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "componentId": "value"<span class="comma">,</span>
    "nodes": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ReplayLastEventResponseEntity" class="type hidden">
    <h3>ReplayLastEventResponseEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>componentId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The UUID of the component whose last event should be replayed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>nodes</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Which nodes were requested to replay their last provenance event.
                         Allowable values: ALL, PRIMARY
                        </td>
                </tr>
            
                <tr>
                    <td>aggregateSnapshot</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ReplayLastEventSnapshotDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The aggregate result of all nodes' responses
                        
                        </td>
                </tr>
            
                <tr>
                    <td>nodeSnapshots</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">NodeReplayLastEventSnapshotDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The node-wise results
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "componentId": "value"<span class="comma">,</span>
    "nodes": "value"<span class="comma">,</span>
    "aggregateSnapshot": <span class="nested collapsed"><span class="nested-id hidden">ReplayLastEventSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "nodeSnapshots": [<span class="nested collapsed"><span class="nested-id hidden">NodeReplayLastEventSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ReplayLastEventSnapshotDTO" class="type hidden">
    <h3>ReplayLastEventSnapshotDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>eventsReplayed</td>
                    <td>
                        
                            
                            
                                array[integer]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The IDs of the events that were successfully replayed
                        
                        </td>
                </tr>
            
                <tr>
                    <td>failureExplanation</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>If unable to replay an event, specifies why the event could not be replayed
                        
                        </td>
                </tr>
            
                <tr>
                    <td>eventAvailable</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not an event was available. This may not be populated if there was a failure.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "eventsReplayed": ["value"]<span class="comma">,</span>
    "failureExplanation": "value"<span class="comma">,</span>
    "eventAvailable": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ReportingTaskDTO" class="type hidden">
    <h3>ReportingTaskDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionedComponentId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the corresponding component that is under version control
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parentGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of parent process group of this component if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the reporting task.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>type</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The fully qualified type of the reporting task.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bundle</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">BundleDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The details of the artifact that bundled this reporting task type.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>state</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The state of the reporting task.
                         Allowable values: RUNNING, STOPPED, DISABLED
                        </td>
                </tr>
            
                <tr>
                    <td>comments</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The comments of the reporting task.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>persistsState</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the reporting task persists state.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>restricted</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the reporting task requires elevated privileges.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>deprecated</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the reporting task has been deprecated.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>multipleVersionsAvailable</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the reporting task has multiple versions available.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>supportsSensitiveDynamicProperties</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the reporting task supports sensitive dynamic properties.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>schedulingPeriod</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The frequency with which to schedule the reporting task. The format of the value will depend on the value of the schedulingStrategy.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>schedulingStrategy</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The scheduling strategy that determines how the schedulingPeriod value should be interpreted.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>defaultSchedulingPeriod</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The default scheduling period for the different scheduling strategies.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>properties</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The properties of the reporting task.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>descriptors</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The descriptors for the reporting tasks properties.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>sensitiveDynamicPropertyNames</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Set of sensitive dynamic property names
                        
                        </td>
                </tr>
            
                <tr>
                    <td>customUiUrl</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URL for the custom configuration UI for the reporting task.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>annotationData</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The annotation data for the repoting task. This is how the custom UI relays configuration to the reporting task.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>validationErrors</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Gets the validation errors from the reporting task. These validation errors represent the problems with the reporting task that must be resolved before it can be scheduled to run.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>validationStatus</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether the Reporting Task is valid, invalid, or still in the process of validating (i.e., it is unknown whether or not the Reporting Task is valid)
                         Allowable values: VALID, INVALID, VALIDATING
                        </td>
                </tr>
            
                <tr>
                    <td>activeThreadCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of active threads for the reporting task.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>extensionMissing</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the underlying extension is missing.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "versionedComponentId": "value"<span class="comma">,</span>
    "parentGroupId": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "type": "value"<span class="comma">,</span>
    "bundle": <span class="nested collapsed"><span class="nested-id hidden">BundleDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "state": "value"<span class="comma">,</span>
    "comments": "value"<span class="comma">,</span>
    "persistsState": true<span class="comma">,</span>
    "restricted": true<span class="comma">,</span>
    "deprecated": true<span class="comma">,</span>
    "multipleVersionsAvailable": true<span class="comma">,</span>
    "supportsSensitiveDynamicProperties": true<span class="comma">,</span>
    "schedulingPeriod": "value"<span class="comma">,</span>
    "schedulingStrategy": "value"<span class="comma">,</span>
    "defaultSchedulingPeriod": <span class="open-object">&#123;
        "name": "value"
    &#125;</span><span class="comma">,</span>
    "properties": <span class="open-object">&#123;
        "name": "value"
    &#125;</span><span class="comma">,</span>
    "descriptors": <span class="open-object">&#123;
        "name": <span class="nested collapsed"><span class="nested-id hidden">PropertyDescriptorDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>
    &#125;</span><span class="comma">,</span>
    "sensitiveDynamicPropertyNames": ["value"]<span class="comma">,</span>
    "customUiUrl": "value"<span class="comma">,</span>
    "annotationData": "value"<span class="comma">,</span>
    "validationErrors": ["value"]<span class="comma">,</span>
    "validationStatus": "value"<span class="comma">,</span>
    "activeThreadCount": 0<span class="comma">,</span>
    "extensionMissing": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ReportingTaskDefinition" class="type hidden">
    <h3>ReportingTaskDefinition</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>group</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The group name of the bundle that provides the referenced type.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>artifact</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The artifact name of the bundle that provides the referenced type.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>version</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The version of the bundle that provides the referenced type.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>type</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>required</td>
                    <td>The fully-qualified class type
                        
                        </td>
                </tr>
            
                <tr>
                    <td>typeDescription</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The description of the type.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>buildInfo</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">BuildInfo</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The build metadata for this component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>providedApiImplementations</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">DefinedType</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>If this type represents a provider for an interface, this lists the APIs it implements
                        
                        </td>
                </tr>
            
                <tr>
                    <td>tags</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The tags associated with this type
                        
                        </td>
                </tr>
            
                <tr>
                    <td>deprecated</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not the component has been deprecated
                        
                        </td>
                </tr>
            
                <tr>
                    <td>deprecationReason</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>If this component has been deprecated, this optional field can be used to provide an explanation
                        
                        </td>
                </tr>
            
                <tr>
                    <td>restricted</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not the component has a general restriction
                        
                        </td>
                </tr>
            
                <tr>
                    <td>restrictedExplanation</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>An optional description of the general restriction
                        
                        </td>
                </tr>
            
                <tr>
                    <td>explicitRestrictions</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">Restriction</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Explicit restrictions that indicate a require permission to use the component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>stateful</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">Stateful</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>propertyDescriptors</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Descriptions of configuration properties applicable to this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>supportsDynamicProperties</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not this component makes use of dynamic (user-set) properties.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>supportedSchedulingStrategies</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The supported scheduling strategies, such as TIME_DRIVER or CRON.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>defaultSchedulingStrategy</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The default scheduling strategy for the reporting task.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>defaultSchedulingPeriodBySchedulingStrategy</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The default scheduling period for each scheduling strategy. The scheduling period is expected to be a time period, such as "30 sec".
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "group": "value"<span class="comma">,</span>
    "artifact": "value"<span class="comma">,</span>
    "version": "value"<span class="comma">,</span>
    "type": "value"<span class="comma">,</span>
    "typeDescription": "value"<span class="comma">,</span>
    "buildInfo": <span class="nested collapsed"><span class="nested-id hidden">BuildInfo</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "providedApiImplementations": [<span class="nested collapsed"><span class="nested-id hidden">DefinedType</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "tags": ["value"]<span class="comma">,</span>
    "deprecated": true<span class="comma">,</span>
    "deprecationReason": "value"<span class="comma">,</span>
    "restricted": true<span class="comma">,</span>
    "restrictedExplanation": "value"<span class="comma">,</span>
    "explicitRestrictions": [<span class="nested collapsed"><span class="nested-id hidden">Restriction</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "stateful": <span class="nested collapsed"><span class="nested-id hidden">Stateful</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "propertyDescriptors": <span class="open-object">&#123;
        "name": <span class="nested collapsed"><span class="nested-id hidden">PropertyDescriptor</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>
    &#125;</span><span class="comma">,</span>
    "supportsDynamicProperties": true<span class="comma">,</span>
    "supportedSchedulingStrategies": ["value"]<span class="comma">,</span>
    "defaultSchedulingStrategy": "value"<span class="comma">,</span>
    "defaultSchedulingPeriodBySchedulingStrategy": <span class="open-object">&#123;
        "name": "value"
    &#125;</span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ReportingTaskEntity" class="type hidden">
    <h3>ReportingTaskEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for futures requests to the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bulletins</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BulletinEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bulletins for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>component</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ReportingTaskDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>operatePermissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component operations.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>status</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ReportingTaskStatusDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The status for this ReportingTask.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "bulletins": [<span class="nested collapsed"><span class="nested-id hidden">BulletinEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "component": <span class="nested collapsed"><span class="nested-id hidden">ReportingTaskDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "operatePermissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "status": <span class="nested collapsed"><span class="nested-id hidden">ReportingTaskStatusDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ReportingTaskRunStatusEntity" class="type hidden">
    <h3>ReportingTaskRunStatusEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>state</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The run status of the ReportingTask.
                         Allowable values: RUNNING, STOPPED
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "state": "value"<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ReportingTaskStatusDTO" class="type hidden">
    <h3>ReportingTaskStatusDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>runStatus</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The run status of this ReportingTask
                         Allowable values: RUNNING, STOPPED, DISABLED
                        </td>
                </tr>
            
                <tr>
                    <td>validationStatus</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether the component is valid, invalid, or still in the process of validating (i.e., it is unknown whether or not the component is valid)
                         Allowable values: VALID, INVALID, VALIDATING
                        </td>
                </tr>
            
                <tr>
                    <td>activeThreadCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of active threads for the component.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "runStatus": "value"<span class="comma">,</span>
    "validationStatus": "value"<span class="comma">,</span>
    "activeThreadCount": 0<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ReportingTaskTypesEntity" class="type hidden">
    <h3>ReportingTaskTypesEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>reportingTaskTypes</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">DocumentedTypeDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "reportingTaskTypes": [<span class="nested collapsed"><span class="nested-id hidden">DocumentedTypeDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ReportingTasksEntity" class="type hidden">
    <h3>ReportingTasksEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>reportingTasks</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ReportingTaskEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "reportingTasks": [<span class="nested collapsed"><span class="nested-id hidden">ReportingTaskEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="RepositoryUsageDTO" class="type hidden">
    <h3>RepositoryUsageDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the repository
                        
                        </td>
                </tr>
            
                <tr>
                    <td>fileStoreHash</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A SHA-256 hash of the File Store name/path that is used to store the repository's data. This information is exposed as a hash in order to avoid exposing potentially sensitive information that is not generally relevant. What is typically relevant is whether or not multiple repositories on the same node are using the same File Store, as this indicates that the repositories are competing for the resources of the backing disk/storage mechanism.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>freeSpace</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Amount of free space.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>totalSpace</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Amount of total space.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>freeSpaceBytes</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of bytes of free space.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>totalSpaceBytes</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of bytes of total space.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>utilization</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Utilization of this storage location.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "name": "value"<span class="comma">,</span>
    "fileStoreHash": "value"<span class="comma">,</span>
    "freeSpace": "value"<span class="comma">,</span>
    "totalSpace": "value"<span class="comma">,</span>
    "freeSpaceBytes": 0<span class="comma">,</span>
    "totalSpaceBytes": 0<span class="comma">,</span>
    "utilization": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="RequiredPermissionDTO" class="type hidden">
    <h3>RequiredPermissionDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The required sub-permission necessary for this restriction.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>label</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The label for the required sub-permission necessary for this restriction.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "label": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ResourceDTO" class="type hidden">
    <h3>ResourceDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>identifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The identifier of the resource.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the resource.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "identifier": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ResourcesEntity" class="type hidden">
    <h3>ResourcesEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>resources</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ResourceDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "resources": [<span class="nested collapsed"><span class="nested-id hidden">ResourceDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="Response" class="type hidden">
    <h3>Response</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>status</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>metadata</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>entity</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "status": 0<span class="comma">,</span>
    "metadata": <span class="open-object">&#123;
        "name": "value"
    &#125;</span><span class="comma">,</span>
    "entity": <span class="open-object">&#123;
        "name": "value"
    &#125;</span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="Restriction" class="type hidden">
    <h3>Restriction</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>requiredPermission</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permission required for this restriction
                        
                        </td>
                </tr>
            
                <tr>
                    <td>explanation</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The explanation of this restriction
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "requiredPermission": "value"<span class="comma">,</span>
    "explanation": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="RevisionDTO" class="type hidden">
    <h3>RevisionDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>clientId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A client identifier used to make a request. By including a client identifier, the API can allow multiple requests without needing the current revision. Due to the asynchronous nature of requests/responses this was implemented to allow the client to make numerous requests without having to wait for the previous response to come back
                        
                        </td>
                </tr>
            
                <tr>
                    <td>version</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>NiFi employs an optimistic locking strategy where the client must include a revision in their request when performing an update. In a response to a mutable flow request, this field represents the updated base version.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>lastModifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The user that last modified the flow.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "clientId": "value"<span class="comma">,</span>
    "version": 0<span class="comma">,</span>
    "lastModifier": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="RunStatusDetailsRequestEntity" class="type hidden">
    <h3>RunStatusDetailsRequestEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>processorIds</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The IDs of all processors whose run status details should be provided
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "processorIds": ["value"]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="RuntimeManifest" class="type hidden">
    <h3>RuntimeManifest</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>identifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A unique identifier for the manifest
                        
                        </td>
                </tr>
            
                <tr>
                    <td>agentType</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The type of the runtime binary, e.g., 'minifi-java' or 'minifi-cpp'
                        
                        </td>
                </tr>
            
                <tr>
                    <td>version</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The version of the runtime binary, e.g., '1.0.1'
                        
                        </td>
                </tr>
            
                <tr>
                    <td>buildInfo</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">BuildInfo</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Build summary for this runtime binary
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bundles</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">Bundle</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>All extension bundles included with this runtime
                        
                        </td>
                </tr>
            
                <tr>
                    <td>schedulingDefaults</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">SchedulingDefaults</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Scheduling defaults for components defined in this manifest
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "identifier": "value"<span class="comma">,</span>
    "agentType": "value"<span class="comma">,</span>
    "version": "value"<span class="comma">,</span>
    "buildInfo": <span class="nested collapsed"><span class="nested-id hidden">BuildInfo</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "bundles": [<span class="nested collapsed"><span class="nested-id hidden">Bundle</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "schedulingDefaults": <span class="nested collapsed"><span class="nested-id hidden">SchedulingDefaults</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="RuntimeManifestEntity" class="type hidden">
    <h3>RuntimeManifestEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>runtimeManifest</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RuntimeManifest</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "runtimeManifest": <span class="nested collapsed"><span class="nested-id hidden">RuntimeManifest</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ScheduleComponentsEntity" class="type hidden">
    <h3>ScheduleComponentsEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the ProcessGroup
                        
                        </td>
                </tr>
            
                <tr>
                    <td>state</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The desired state of the descendant components
                         Allowable values: RUNNING, STOPPED, ENABLED, DISABLED
                        </td>
                </tr>
            
                <tr>
                    <td>components</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Optional components to schedule. If not specified, all authorized descendant components will be used.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "state": "value"<span class="comma">,</span>
    "components": <span class="open-object">&#123;
        "name": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>
    &#125;</span><span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="SchedulingDefaults" class="type hidden">
    <h3>SchedulingDefaults</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>defaultSchedulingStrategy</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the default scheduling strategy
                         Allowable values: EVENT_DRIVEN, TIMER_DRIVEN, PRIMARY_NODE_ONLY, CRON_DRIVEN
                        </td>
                </tr>
            
                <tr>
                    <td>defaultSchedulingPeriodMillis</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The default scheduling period in milliseconds
                        
                        </td>
                </tr>
            
                <tr>
                    <td>penalizationPeriodMillis</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The default penalization period in milliseconds
                        
                        </td>
                </tr>
            
                <tr>
                    <td>yieldDurationMillis</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The default yield duration in milliseconds
                        
                        </td>
                </tr>
            
                <tr>
                    <td>defaultRunDurationNanos</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The default run duration in nano-seconds
                        
                        </td>
                </tr>
            
                <tr>
                    <td>defaultMaxConcurrentTasks</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The default concurrent tasks
                        
                        </td>
                </tr>
            
                <tr>
                    <td>defaultConcurrentTasksBySchedulingStrategy</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The default concurrent tasks for each scheduling strategy
                        
                        </td>
                </tr>
            
                <tr>
                    <td>defaultSchedulingPeriodsBySchedulingStrategy</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The default scheduling period for each scheduling strategy
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "defaultSchedulingStrategy": "value"<span class="comma">,</span>
    "defaultSchedulingPeriodMillis": 0<span class="comma">,</span>
    "penalizationPeriodMillis": 0<span class="comma">,</span>
    "yieldDurationMillis": 0<span class="comma">,</span>
    "defaultRunDurationNanos": 0<span class="comma">,</span>
    "defaultMaxConcurrentTasks": "value"<span class="comma">,</span>
    "defaultConcurrentTasksBySchedulingStrategy": <span class="open-object">&#123;
        "name": 0
    &#125;</span><span class="comma">,</span>
    "defaultSchedulingPeriodsBySchedulingStrategy": <span class="open-object">&#123;
        "name": "value"
    &#125;</span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="SearchResultGroupDTO" class="type hidden">
    <h3>SearchResultGroupDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>required</td>
                    <td>The id of the group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the group.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="SearchResultsDTO" class="type hidden">
    <h3>SearchResultsDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>processorResults</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ComponentSearchResultDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The processors that matched the search.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>connectionResults</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ComponentSearchResultDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The connections that matched the search.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>processGroupResults</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ComponentSearchResultDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The process groups that matched the search.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inputPortResults</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ComponentSearchResultDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The input ports that matched the search.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>outputPortResults</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ComponentSearchResultDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The output ports that matched the search.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>remoteProcessGroupResults</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ComponentSearchResultDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The remote process groups that matched the search.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>funnelResults</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ComponentSearchResultDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The funnels that matched the search.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>labelResults</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ComponentSearchResultDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The labels that matched the search.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>controllerServiceNodeResults</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ComponentSearchResultDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The controller service nodes that matched the search
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parameterContextResults</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ComponentSearchResultDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The parameter contexts that matched the search.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parameterProviderNodeResults</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ComponentSearchResultDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The parameter provider nodes that matched the search
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parameterResults</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ComponentSearchResultDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The parameters that matched the search.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "processorResults": [<span class="nested collapsed"><span class="nested-id hidden">ComponentSearchResultDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "connectionResults": [<span class="nested collapsed"><span class="nested-id hidden">ComponentSearchResultDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "processGroupResults": [<span class="nested collapsed"><span class="nested-id hidden">ComponentSearchResultDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "inputPortResults": [<span class="nested collapsed"><span class="nested-id hidden">ComponentSearchResultDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "outputPortResults": [<span class="nested collapsed"><span class="nested-id hidden">ComponentSearchResultDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "remoteProcessGroupResults": [<span class="nested collapsed"><span class="nested-id hidden">ComponentSearchResultDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "funnelResults": [<span class="nested collapsed"><span class="nested-id hidden">ComponentSearchResultDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "labelResults": [<span class="nested collapsed"><span class="nested-id hidden">ComponentSearchResultDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "controllerServiceNodeResults": [<span class="nested collapsed"><span class="nested-id hidden">ComponentSearchResultDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "parameterContextResults": [<span class="nested collapsed"><span class="nested-id hidden">ComponentSearchResultDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "parameterProviderNodeResults": [<span class="nested collapsed"><span class="nested-id hidden">ComponentSearchResultDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "parameterResults": [<span class="nested collapsed"><span class="nested-id hidden">ComponentSearchResultDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="SearchResultsEntity" class="type hidden">
    <h3>SearchResultsEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>searchResultsDTO</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">SearchResultsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "searchResultsDTO": <span class="nested collapsed"><span class="nested-id hidden">SearchResultsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="SnippetDTO" class="type hidden">
    <h3>SnippetDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the snippet.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI of the snippet.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parentGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The group id for the components in the snippet.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>processGroups</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ids of the process groups in this snippet. These ids will be populated within each response. They can be specified when creating a snippet. However, once a snippet has been created its contents cannot be modified (these ids are ignored during update requests).
                        
                        </td>
                </tr>
            
                <tr>
                    <td>remoteProcessGroups</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ids of the remote process groups in this snippet. These ids will be populated within each response. They can be specified when creating a snippet. However, once a snippet has been created its contents cannot be modified (these ids are ignored during update requests).
                        
                        </td>
                </tr>
            
                <tr>
                    <td>processors</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ids of the processors in this snippet. These ids will be populated within each response. They can be specified when creating a snippet. However, once a snippet has been created its contents cannot be modified (these ids are ignored during update requests).
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inputPorts</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ids of the input ports in this snippet. These ids will be populated within each response. They can be specified when creating a snippet. However, once a snippet has been created its contents cannot be modified (these ids are ignored during update requests).
                        
                        </td>
                </tr>
            
                <tr>
                    <td>outputPorts</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ids of the output ports in this snippet. These ids will be populated within each response. They can be specified when creating a snippet. However, once a snippet has been created its contents cannot be modified (these ids are ignored during update requests).
                        
                        </td>
                </tr>
            
                <tr>
                    <td>connections</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ids of the connections in this snippet. These ids will be populated within each response. They can be specified when creating a snippet. However, once a snippet has been created its contents cannot be modified (these ids are ignored during update requests).
                        
                        </td>
                </tr>
            
                <tr>
                    <td>labels</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ids of the labels in this snippet. These ids will be populated within each response. They can be specified when creating a snippet. However, once a snippet has been created its contents cannot be modified (these ids are ignored during update requests).
                        
                        </td>
                </tr>
            
                <tr>
                    <td>funnels</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ids of the funnels in this snippet. These ids will be populated within each response. They can be specified when creating a snippet. However, once a snippet has been created its contents cannot be modified (these ids are ignored during update requests).
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "parentGroupId": "value"<span class="comma">,</span>
    "processGroups": <span class="open-object">&#123;
        "name": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>
    &#125;</span><span class="comma">,</span>
    "remoteProcessGroups": <span class="open-object">&#123;
        "name": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>
    &#125;</span><span class="comma">,</span>
    "processors": <span class="open-object">&#123;
        "name": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>
    &#125;</span><span class="comma">,</span>
    "inputPorts": <span class="open-object">&#123;
        "name": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>
    &#125;</span><span class="comma">,</span>
    "outputPorts": <span class="open-object">&#123;
        "name": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>
    &#125;</span><span class="comma">,</span>
    "connections": <span class="open-object">&#123;
        "name": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>
    &#125;</span><span class="comma">,</span>
    "labels": <span class="open-object">&#123;
        "name": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>
    &#125;</span><span class="comma">,</span>
    "funnels": <span class="open-object">&#123;
        "name": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>
    &#125;</span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="SnippetEntity" class="type hidden">
    <h3>SnippetEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>snippet</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">SnippetDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The snippet.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "snippet": <span class="nested collapsed"><span class="nested-id hidden">SnippetDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="StackTraceElement" class="type hidden">
    <h3>StackTraceElement</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>methodName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>fileName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>lineNumber</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>className</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>nativeMethod</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "methodName": "value"<span class="comma">,</span>
    "fileName": "value"<span class="comma">,</span>
    "lineNumber": 0<span class="comma">,</span>
    "className": "value"<span class="comma">,</span>
    "nativeMethod": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="StartVersionControlRequestEntity" class="type hidden">
    <h3>StartVersionControlRequestEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>versionedFlow</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">VersionedFlowDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The versioned flow
                        
                        </td>
                </tr>
            
                <tr>
                    <td>processGroupRevision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Revision of the Process Group under Version Control
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "versionedFlow": <span class="nested collapsed"><span class="nested-id hidden">VersionedFlowDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "processGroupRevision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="StateEntryDTO" class="type hidden">
    <h3>StateEntryDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>key</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The key for this state.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>value</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The value for this state.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>clusterNodeId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The identifier for the node where the state originated.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>clusterNodeAddress</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The label for the node where the state originated.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "key": "value"<span class="comma">,</span>
    "value": "value"<span class="comma">,</span>
    "clusterNodeId": "value"<span class="comma">,</span>
    "clusterNodeAddress": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="StateMapDTO" class="type hidden">
    <h3>StateMapDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>scope</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The scope of this StateMap.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>totalEntryCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The total number of state entries. When the state map is lengthy, only of portion of the entries are returned.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>state</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">StateEntryDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The state.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "scope": "value"<span class="comma">,</span>
    "totalEntryCount": 0<span class="comma">,</span>
    "state": [<span class="nested collapsed"><span class="nested-id hidden">StateEntryDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="Stateful" class="type hidden">
    <h3>Stateful</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>description</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Description of what information is being stored in the StateManager
                        
                        </td>
                </tr>
            
                <tr>
                    <td>scopes</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates the Scope(s) associated with the State that is stored and retrieved
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "description": "value"<span class="comma">,</span>
    "scopes": ["value"]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="StatusDescriptorDTO" class="type hidden">
    <h3>StatusDescriptorDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>field</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the status field.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>label</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The label for the status field.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>description</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The description of the status field.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>formatter</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The formatter for the status descriptor.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "field": "value"<span class="comma">,</span>
    "label": "value"<span class="comma">,</span>
    "description": "value"<span class="comma">,</span>
    "formatter": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="StatusHistoryDTO" class="type hidden">
    <h3>StatusHistoryDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>generated</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>When the status history was generated.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>componentDetails</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A Map of key/value pairs that describe the component that the status history belongs to
                        
                        </td>
                </tr>
            
                <tr>
                    <td>fieldDescriptors</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">StatusDescriptorDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Descriptors that provide information on each of the metrics provided in the status history
                        
                        </td>
                </tr>
            
                <tr>
                    <td>aggregateSnapshots</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">StatusSnapshotDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A list of StatusSnapshotDTO objects that provide the actual metric values for the component. If the NiFi instance is clustered, this will represent the aggregate status across all nodes. If the NiFi instance is not clustered, this will represent the status of the entire NiFi instance.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>nodeSnapshots</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">NodeStatusSnapshotsDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The NodeStatusSnapshotsDTO objects that provide the actual metric values for the component, for each node. If the NiFi instance is not clustered, this value will be null.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "generated": "value"<span class="comma">,</span>
    "componentDetails": <span class="open-object">&#123;
        "name": "value"
    &#125;</span><span class="comma">,</span>
    "fieldDescriptors": [<span class="nested collapsed"><span class="nested-id hidden">StatusDescriptorDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "aggregateSnapshots": [<span class="nested collapsed"><span class="nested-id hidden">StatusSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "nodeSnapshots": [<span class="nested collapsed"><span class="nested-id hidden">NodeStatusSnapshotsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="StatusHistoryEntity" class="type hidden">
    <h3>StatusHistoryEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>statusHistory</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">StatusHistoryDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>canRead</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether the user can read a given resource.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "statusHistory": <span class="nested collapsed"><span class="nested-id hidden">StatusHistoryDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "canRead": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="StatusSnapshotDTO" class="type hidden">
    <h3>StatusSnapshotDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>timestamp</td>
                    <td>
                        
                            
                            
                                string (date-time)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp of the snapshot.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>statusMetrics</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The status metrics.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "timestamp": "value"<span class="comma">,</span>
    "statusMetrics": <span class="open-object">&#123;
        "name": 0
    &#125;</span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="StorageUsageDTO" class="type hidden">
    <h3>StorageUsageDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>identifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The identifier of this storage location. The identifier will correspond to the identifier keyed in the storage configuration.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>freeSpace</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Amount of free space.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>totalSpace</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Amount of total space.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>usedSpace</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Amount of used space.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>freeSpaceBytes</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of bytes of free space.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>totalSpaceBytes</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of bytes of total space.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>usedSpaceBytes</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of bytes of used space.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>utilization</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Utilization of this storage location.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "identifier": "value"<span class="comma">,</span>
    "freeSpace": "value"<span class="comma">,</span>
    "totalSpace": "value"<span class="comma">,</span>
    "usedSpace": "value"<span class="comma">,</span>
    "freeSpaceBytes": 0<span class="comma">,</span>
    "totalSpaceBytes": 0<span class="comma">,</span>
    "usedSpaceBytes": 0<span class="comma">,</span>
    "utilization": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="StreamingOutput" class="type hidden">
    <h3>StreamingOutput</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="SubmitReplayRequestEntity" class="type hidden">
    <h3>SubmitReplayRequestEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>eventId</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The event identifier
                        
                        </td>
                </tr>
            
                <tr>
                    <td>clusterNodeId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The identifier of the node where to submit the replay request.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "eventId": 0<span class="comma">,</span>
    "clusterNodeId": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="SystemDiagnosticsDTO" class="type hidden">
    <h3>SystemDiagnosticsDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>aggregateSnapshot</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">SystemDiagnosticsSnapshotDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A systems diagnostic snapshot that represents the aggregate values of all nodes in the cluster. If the NiFi instance is a standalone instance, rather than a cluster, this represents the stats of the single instance.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>nodeSnapshots</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">NodeSystemDiagnosticsSnapshotDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A systems diagnostics snapshot for each node in the cluster. If the NiFi instance is a standalone instance, rather than a cluster, this may be null.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "aggregateSnapshot": <span class="nested collapsed"><span class="nested-id hidden">SystemDiagnosticsSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "nodeSnapshots": [<span class="nested collapsed"><span class="nested-id hidden">NodeSystemDiagnosticsSnapshotDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="SystemDiagnosticsEntity" class="type hidden">
    <h3>SystemDiagnosticsEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>systemDiagnostics</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">SystemDiagnosticsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "systemDiagnostics": <span class="nested collapsed"><span class="nested-id hidden">SystemDiagnosticsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="SystemDiagnosticsSnapshotDTO" class="type hidden">
    <h3>SystemDiagnosticsSnapshotDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>totalNonHeap</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Total size of non heap.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>totalNonHeapBytes</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Total number of bytes allocated to the JVM not used for heap
                        
                        </td>
                </tr>
            
                <tr>
                    <td>usedNonHeap</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Amount of use non heap.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>usedNonHeapBytes</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Total number of bytes used by the JVM not in the heap space
                        
                        </td>
                </tr>
            
                <tr>
                    <td>freeNonHeap</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Amount of free non heap.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>freeNonHeapBytes</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Total number of free non-heap bytes available to the JVM
                        
                        </td>
                </tr>
            
                <tr>
                    <td>maxNonHeap</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Maximum size of non heap.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>maxNonHeapBytes</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The maximum number of bytes that the JVM can use for non-heap purposes
                        
                        </td>
                </tr>
            
                <tr>
                    <td>nonHeapUtilization</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Utilization of non heap.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>totalHeap</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Total size of heap.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>totalHeapBytes</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The total number of bytes that are available for the JVM heap to use
                        
                        </td>
                </tr>
            
                <tr>
                    <td>usedHeap</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Amount of used heap.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>usedHeapBytes</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of bytes of JVM heap that are currently being used
                        
                        </td>
                </tr>
            
                <tr>
                    <td>freeHeap</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Amount of free heap.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>freeHeapBytes</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of bytes that are allocated to the JVM heap but not currently being used
                        
                        </td>
                </tr>
            
                <tr>
                    <td>maxHeap</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Maximum size of heap.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>maxHeapBytes</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The maximum number of bytes that can be used by the JVM
                        
                        </td>
                </tr>
            
                <tr>
                    <td>heapUtilization</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Utilization of heap.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>availableProcessors</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Number of available processors if supported by the underlying system.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>processorLoadAverage</td>
                    <td>
                        
                            
                            
                                number (double)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The processor load average if supported by the underlying system.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>totalThreads</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Total number of threads.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>daemonThreads</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Number of daemon threads.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uptime</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The uptime of the Java virtual machine
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowFileRepositoryStorageUsage</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">StorageUsageDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The flowfile repository storage usage.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>contentRepositoryStorageUsage</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">StorageUsageDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The content repository storage usage.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>provenanceRepositoryStorageUsage</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">StorageUsageDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The provenance repository storage usage.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>garbageCollection</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">GarbageCollectionDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The garbage collection details.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>statsLastRefreshed</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>When the diagnostics were generated.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionInfo</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">VersionInfoDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The nifi, os, java, and build version information
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "totalNonHeap": "value"<span class="comma">,</span>
    "totalNonHeapBytes": 0<span class="comma">,</span>
    "usedNonHeap": "value"<span class="comma">,</span>
    "usedNonHeapBytes": 0<span class="comma">,</span>
    "freeNonHeap": "value"<span class="comma">,</span>
    "freeNonHeapBytes": 0<span class="comma">,</span>
    "maxNonHeap": "value"<span class="comma">,</span>
    "maxNonHeapBytes": 0<span class="comma">,</span>
    "nonHeapUtilization": "value"<span class="comma">,</span>
    "totalHeap": "value"<span class="comma">,</span>
    "totalHeapBytes": 0<span class="comma">,</span>
    "usedHeap": "value"<span class="comma">,</span>
    "usedHeapBytes": 0<span class="comma">,</span>
    "freeHeap": "value"<span class="comma">,</span>
    "freeHeapBytes": 0<span class="comma">,</span>
    "maxHeap": "value"<span class="comma">,</span>
    "maxHeapBytes": 0<span class="comma">,</span>
    "heapUtilization": "value"<span class="comma">,</span>
    "availableProcessors": 0<span class="comma">,</span>
    "processorLoadAverage": 0.0<span class="comma">,</span>
    "totalThreads": 0<span class="comma">,</span>
    "daemonThreads": 0<span class="comma">,</span>
    "uptime": "value"<span class="comma">,</span>
    "flowFileRepositoryStorageUsage": <span class="nested collapsed"><span class="nested-id hidden">StorageUsageDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "contentRepositoryStorageUsage": [<span class="nested collapsed"><span class="nested-id hidden">StorageUsageDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "provenanceRepositoryStorageUsage": [<span class="nested collapsed"><span class="nested-id hidden">StorageUsageDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "garbageCollection": [<span class="nested collapsed"><span class="nested-id hidden">GarbageCollectionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "statsLastRefreshed": "value"<span class="comma">,</span>
    "versionInfo": <span class="nested collapsed"><span class="nested-id hidden">VersionInfoDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="TemplateDTO" class="type hidden">
    <h3>TemplateDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for the template.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the template.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>groupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the Process Group that the template belongs to.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the template.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>description</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The description of the template.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>timestamp</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp when this template was created.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>encodingVersion</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The encoding version of this template.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>snippet</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">FlowSnippetDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The contents of the template.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "uri": "value"<span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
    "groupId": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "description": "value"<span class="comma">,</span>
    "timestamp": "value"<span class="comma">,</span>
    "encodingVersion": "value"<span class="comma">,</span>
    "snippet": <span class="nested collapsed"><span class="nested-id hidden">FlowSnippetDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="TemplateEntity" class="type hidden">
    <h3>TemplateEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for futures requests to the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bulletins</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BulletinEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bulletins for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>template</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">TemplateDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "bulletins": [<span class="nested collapsed"><span class="nested-id hidden">BulletinEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "template": <span class="nested collapsed"><span class="nested-id hidden">TemplateDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="TemplatesEntity" class="type hidden">
    <h3>TemplatesEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>templates</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">TemplateEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>generated</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>When this content was generated.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "templates": [<span class="nested collapsed"><span class="nested-id hidden">TemplateEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "generated": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="TenantDTO" class="type hidden">
    <h3>TenantDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionedComponentId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the corresponding component that is under version control
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parentGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of parent process group of this component if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>identity</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The identity of the tenant.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>configurable</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether this tenant is configurable.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "versionedComponentId": "value"<span class="comma">,</span>
    "parentGroupId": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "identity": "value"<span class="comma">,</span>
    "configurable": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="TenantEntity" class="type hidden">
    <h3>TenantEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for futures requests to the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bulletins</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BulletinEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bulletins for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>component</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">TenantDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "bulletins": [<span class="nested collapsed"><span class="nested-id hidden">BulletinEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "component": <span class="nested collapsed"><span class="nested-id hidden">TenantDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="TenantsEntity" class="type hidden">
    <h3>TenantsEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>users</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">TenantEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>userGroups</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">TenantEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "users": [<span class="nested collapsed"><span class="nested-id hidden">TenantEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "userGroups": [<span class="nested collapsed"><span class="nested-id hidden">TenantEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="ThreadDumpDTO" class="type hidden">
    <h3>ThreadDumpDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>nodeId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the node in the cluster
                        
                        </td>
                </tr>
            
                <tr>
                    <td>nodeAddress</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The address of the node in the cluster
                        
                        </td>
                </tr>
            
                <tr>
                    <td>apiPort</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The port the node is listening for API requests.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>stackTrace</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The stack trace for the thread
                        
                        </td>
                </tr>
            
                <tr>
                    <td>threadName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the thread
                        
                        </td>
                </tr>
            
                <tr>
                    <td>threadActiveMillis</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of milliseconds that the thread has been executing in the Processor
                        
                        </td>
                </tr>
            
                <tr>
                    <td>taskTerminated</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether or not the user has requested that the task be terminated. If this is true, it may indicate that the thread is in a state where it will continue running indefinitely without returning.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "nodeId": "value"<span class="comma">,</span>
    "nodeAddress": "value"<span class="comma">,</span>
    "apiPort": 0<span class="comma">,</span>
    "stackTrace": "value"<span class="comma">,</span>
    "threadName": "value"<span class="comma">,</span>
    "threadActiveMillis": 0<span class="comma">,</span>
    "taskTerminated": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="Throwable" class="type hidden">
    <h3>Throwable</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>cause</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">Throwable</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>stackTrace</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">StackTraceElement</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>message</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>localizedMessage</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>suppressed</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">Throwable</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "cause": <span class="nested collapsed"><span class="nested-id hidden">Throwable</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "stackTrace": [<span class="nested collapsed"><span class="nested-id hidden">StackTraceElement</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "message": "value"<span class="comma">,</span>
    "localizedMessage": "value"<span class="comma">,</span>
    "suppressed": [<span class="nested collapsed"><span class="nested-id hidden">Throwable</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="TransactionResultEntity" class="type hidden">
    <h3>TransactionResultEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>flowFileSent</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>responseCode</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>message</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "flowFileSent": 0<span class="comma">,</span>
    "responseCode": 0<span class="comma">,</span>
    "message": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="UpdateControllerServiceReferenceRequestEntity" class="type hidden">
    <h3>UpdateControllerServiceReferenceRequestEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The identifier of the Controller Service.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>state</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The new state of the references for the controller service.
                         Allowable values: ENABLED, DISABLED, RUNNING, STOPPED
                        </td>
                </tr>
            
                <tr>
                    <td>referencingComponentRevisions</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revisions for all referencing components.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uiOnly</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether or not the response should only include fields necessary for rendering the NiFi User Interface. As such, when this value is set to true, some fields may be returned as null values, and the selected fields may change at any time without notice. As a result, this value should not be set to true by any client other than the UI.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "state": "value"<span class="comma">,</span>
    "referencingComponentRevisions": <span class="open-object">&#123;
        "name": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>
    &#125;</span><span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "uiOnly": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="UserDTO" class="type hidden">
    <h3>UserDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionedComponentId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the corresponding component that is under version control
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parentGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of parent process group of this component if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>identity</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The identity of the tenant.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>configurable</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether this tenant is configurable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>userGroups</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">TenantEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The groups to which the user belongs. This field is read only and it provided for convenience.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>accessPolicies</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">AccessPolicySummaryEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The access policies this user belongs to.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "versionedComponentId": "value"<span class="comma">,</span>
    "parentGroupId": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "identity": "value"<span class="comma">,</span>
    "configurable": true<span class="comma">,</span>
    "userGroups": [<span class="nested collapsed"><span class="nested-id hidden">TenantEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "accessPolicies": [<span class="nested collapsed"><span class="nested-id hidden">AccessPolicySummaryEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="UserEntity" class="type hidden">
    <h3>UserEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for futures requests to the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bulletins</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BulletinEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bulletins for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>component</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">UserDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "bulletins": [<span class="nested collapsed"><span class="nested-id hidden">BulletinEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "component": <span class="nested collapsed"><span class="nested-id hidden">UserDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="UserGroupDTO" class="type hidden">
    <h3>UserGroupDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionedComponentId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the corresponding component that is under version control
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parentGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of parent process group of this component if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>identity</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The identity of the tenant.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>configurable</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether this tenant is configurable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>users</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">TenantEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The users that belong to the user group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>accessPolicies</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">AccessPolicyEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The access policies this user group belongs to. This field was incorrectly defined as an AccessPolicyEntity. For compatibility reasons the field will remain of this type, however only the fields that are present in the AccessPolicySummaryEntity will be populated here.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "id": "value"<span class="comma">,</span>
    "versionedComponentId": "value"<span class="comma">,</span>
    "parentGroupId": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "identity": "value"<span class="comma">,</span>
    "configurable": true<span class="comma">,</span>
    "users": [<span class="nested collapsed"><span class="nested-id hidden">TenantEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "accessPolicies": [<span class="nested collapsed"><span class="nested-id hidden">AccessPolicyEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="UserGroupEntity" class="type hidden">
    <h3>UserGroupEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>revision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for this request/response. The revision is required for any mutable flow requests and is included in all responses.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>id</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for futures requests to the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PositionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The position of this component in the UI if applicable.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>permissions</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">PermissionsDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The permissions for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bulletins</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">BulletinEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bulletins for this component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>component</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">UserGroupDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "revision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "id": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">PositionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "permissions": <span class="nested collapsed"><span class="nested-id hidden">PermissionsDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "bulletins": [<span class="nested collapsed"><span class="nested-id hidden">BulletinEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "component": <span class="nested collapsed"><span class="nested-id hidden">UserGroupDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="UserGroupsEntity" class="type hidden">
    <h3>UserGroupsEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>userGroups</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">UserGroupEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "userGroups": [<span class="nested collapsed"><span class="nested-id hidden">UserGroupEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="UsersEntity" class="type hidden">
    <h3>UsersEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>generated</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>When this content was generated.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>users</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">UserEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "generated": "value"<span class="comma">,</span>
    "users": [<span class="nested collapsed"><span class="nested-id hidden">UserEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VariableDTO" class="type hidden">
    <h3>VariableDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the variable
                        
                        </td>
                </tr>
            
                <tr>
                    <td>value</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The value of the variable
                        
                        </td>
                </tr>
            
                <tr>
                    <td>processGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the Process Group where this Variable is defined
                        
                        </td>
                </tr>
            
                <tr>
                    <td>affectedComponents</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">AffectedComponentEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A set of all components that will be affected if the value of this variable is changed
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "name": "value"<span class="comma">,</span>
    "value": "value"<span class="comma">,</span>
    "processGroupId": "value"<span class="comma">,</span>
    "affectedComponents": [<span class="nested collapsed"><span class="nested-id hidden">AffectedComponentEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VariableEntity" class="type hidden">
    <h3>VariableEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>variable</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">VariableDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The variable information
                        
                        </td>
                </tr>
            
                <tr>
                    <td>canWrite</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether the user can write a given resource.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "variable": <span class="nested collapsed"><span class="nested-id hidden">VariableDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "canWrite": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VariableRegistryDTO" class="type hidden">
    <h3>VariableRegistryDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>variables</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">VariableEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The variables that are available in this Variable Registry
                        
                        </td>
                </tr>
            
                <tr>
                    <td>processGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The UUID of the Process Group that this Variable Registry belongs to
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "variables": [<span class="nested collapsed"><span class="nested-id hidden">VariableEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "processGroupId": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VariableRegistryEntity" class="type hidden">
    <h3>VariableRegistryEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>processGroupRevision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision of the Process Group that the Variable Registry belongs to
                        
                        </td>
                </tr>
            
                <tr>
                    <td>variableRegistry</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">VariableRegistryDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Variable Registry.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "processGroupRevision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "variableRegistry": <span class="nested collapsed"><span class="nested-id hidden">VariableRegistryDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VariableRegistryUpdateRequestDTO" class="type hidden">
    <h3>VariableRegistryUpdateRequestDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>requestId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the request
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for the request
                        
                        </td>
                </tr>
            
                <tr>
                    <td>submissionTime</td>
                    <td>
                        
                            
                            
                                string (date-time)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp of when the request was submitted
                        
                        </td>
                </tr>
            
                <tr>
                    <td>lastUpdated</td>
                    <td>
                        
                            
                            
                                string (date-time)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp of when the request was last updated
                        
                        </td>
                </tr>
            
                <tr>
                    <td>complete</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not the request is completed
                        
                        </td>
                </tr>
            
                <tr>
                    <td>failureReason</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The reason for the request failing, or null if the request has not failed
                        
                        </td>
                </tr>
            
                <tr>
                    <td>percentCompleted</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A value between 0 and 100 (inclusive) indicating how close the request is to completion
                        
                        </td>
                </tr>
            
                <tr>
                    <td>state</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A description of the current state of the request
                        
                        </td>
                </tr>
            
                <tr>
                    <td>updateSteps</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">VariableRegistryUpdateStepDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The steps that are required in order to complete the request, along with the status of each
                        
                        </td>
                </tr>
            
                <tr>
                    <td>processGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The unique ID of the Process Group that the variable registry belongs to
                        
                        </td>
                </tr>
            
                <tr>
                    <td>affectedComponents</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">AffectedComponentEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A set of all components that will be affected if the value of this variable is changed
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "requestId": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "submissionTime": "value"<span class="comma">,</span>
    "lastUpdated": "value"<span class="comma">,</span>
    "complete": true<span class="comma">,</span>
    "failureReason": "value"<span class="comma">,</span>
    "percentCompleted": 0<span class="comma">,</span>
    "state": "value"<span class="comma">,</span>
    "updateSteps": [<span class="nested collapsed"><span class="nested-id hidden">VariableRegistryUpdateStepDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "processGroupId": "value"<span class="comma">,</span>
    "affectedComponents": [<span class="nested collapsed"><span class="nested-id hidden">AffectedComponentEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VariableRegistryUpdateRequestEntity" class="type hidden">
    <h3>VariableRegistryUpdateRequestEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>request</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">VariableRegistryUpdateRequestDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Variable Registry Update Request
                        
                        </td>
                </tr>
            
                <tr>
                    <td>processGroupRevision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for the Process Group that owns this variable registry.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "request": <span class="nested collapsed"><span class="nested-id hidden">VariableRegistryUpdateRequestDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "processGroupRevision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VariableRegistryUpdateStepDTO" class="type hidden">
    <h3>VariableRegistryUpdateStepDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>description</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Explanation of what happens in this step
                        
                        </td>
                </tr>
            
                <tr>
                    <td>complete</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not this step has completed
                        
                        </td>
                </tr>
            
                <tr>
                    <td>failureReason</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>An explanation of why this step failed, or null if this step did not fail
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "description": "value"<span class="comma">,</span>
    "complete": true<span class="comma">,</span>
    "failureReason": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VerifyConfigRequestDTO" class="type hidden">
    <h3>VerifyConfigRequestDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>requestId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the request
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for the request
                        
                        </td>
                </tr>
            
                <tr>
                    <td>submissionTime</td>
                    <td>
                        
                            
                            
                                string (date-time)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp of when the request was submitted
                        
                        </td>
                </tr>
            
                <tr>
                    <td>lastUpdated</td>
                    <td>
                        
                            
                            
                                string (date-time)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The timestamp of when the request was last updated
                        
                        </td>
                </tr>
            
                <tr>
                    <td>complete</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not the request is completed
                        
                        </td>
                </tr>
            
                <tr>
                    <td>failureReason</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The reason for the request failing, or null if the request has not failed
                        
                        </td>
                </tr>
            
                <tr>
                    <td>percentCompleted</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A value between 0 and 100 (inclusive) indicating how close the request is to completion
                        
                        </td>
                </tr>
            
                <tr>
                    <td>state</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A description of the current state of the request
                        
                        </td>
                </tr>
            
                <tr>
                    <td>updateSteps</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">VerifyConfigUpdateStepDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The steps that are required in order to complete the request, along with the status of each
                        
                        </td>
                </tr>
            
                <tr>
                    <td>componentId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the component whose configuration was verified
                        
                        </td>
                </tr>
            
                <tr>
                    <td>properties</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The configured component properties
                        
                        </td>
                </tr>
            
                <tr>
                    <td>attributes</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>FlowFile Attributes that should be used to evaluate Expression Language for resolving property values
                        
                        </td>
                </tr>
            
                <tr>
                    <td>results</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ConfigVerificationResultDTO</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Results of the verification
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "requestId": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "submissionTime": "value"<span class="comma">,</span>
    "lastUpdated": "value"<span class="comma">,</span>
    "complete": true<span class="comma">,</span>
    "failureReason": "value"<span class="comma">,</span>
    "percentCompleted": 0<span class="comma">,</span>
    "state": "value"<span class="comma">,</span>
    "updateSteps": [<span class="nested collapsed"><span class="nested-id hidden">VerifyConfigUpdateStepDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "componentId": "value"<span class="comma">,</span>
    "properties": <span class="open-object">&#123;
        "name": "value"
    &#125;</span><span class="comma">,</span>
    "attributes": <span class="open-object">&#123;
        "name": "value"
    &#125;</span><span class="comma">,</span>
    "results": [<span class="nested collapsed"><span class="nested-id hidden">ConfigVerificationResultDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VerifyConfigRequestEntity" class="type hidden">
    <h3>VerifyConfigRequestEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>request</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">VerifyConfigRequestDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The request
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "request": <span class="nested collapsed"><span class="nested-id hidden">VerifyConfigRequestDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VerifyConfigUpdateStepDTO" class="type hidden">
    <h3>VerifyConfigUpdateStepDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>description</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Explanation of what happens in this step
                        
                        </td>
                </tr>
            
                <tr>
                    <td>complete</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not this step has completed
                        
                        </td>
                </tr>
            
                <tr>
                    <td>failureReason</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>An explanation of why this step failed, or null if this step did not fail
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "description": "value"<span class="comma">,</span>
    "complete": true<span class="comma">,</span>
    "failureReason": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VersionControlComponentMappingEntity" class="type hidden">
    <h3>VersionControlComponentMappingEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>versionControlComponentMapping</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The mapping of Versioned Component Identifiers to instance ID's
                        
                        </td>
                </tr>
            
                <tr>
                    <td>processGroupRevision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision of the Process Group
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionControlInformation</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">VersionControlInformationDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Version Control information
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "versionControlComponentMapping": <span class="open-object">&#123;
        "name": "value"
    &#125;</span><span class="comma">,</span>
    "processGroupRevision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "versionControlInformation": <span class="nested collapsed"><span class="nested-id hidden">VersionControlInformationDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VersionControlInformationDTO" class="type hidden">
    <h3>VersionControlInformationDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>groupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the Process Group that is under version control
                        
                        </td>
                </tr>
            
                <tr>
                    <td>registryId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the registry that the flow is stored in
                        
                        </td>
                </tr>
            
                <tr>
                    <td>registryName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the registry that the flow is stored in
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bucketId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the bucket that the flow is stored in
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bucketName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the bucket that the flow is stored in
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the flow
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the flow
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowDescription</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The description of the flow
                        
                        </td>
                </tr>
            
                <tr>
                    <td>version</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The version of the flow
                        
                        </td>
                </tr>
            
                <tr>
                    <td>storageLocation</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The storage location
                        
                        </td>
                </tr>
            
                <tr>
                    <td>state</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The current state of the Process Group, as it relates to the Versioned Flow
                         Allowable values: LOCALLY_MODIFIED, STALE, LOCALLY_MODIFIED_AND_STALE, UP_TO_DATE, SYNC_FAILURE
                        </td>
                </tr>
            
                <tr>
                    <td>stateExplanation</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Explanation of why the group is in the specified state
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "groupId": "value"<span class="comma">,</span>
    "registryId": "value"<span class="comma">,</span>
    "registryName": "value"<span class="comma">,</span>
    "bucketId": "value"<span class="comma">,</span>
    "bucketName": "value"<span class="comma">,</span>
    "flowId": "value"<span class="comma">,</span>
    "flowName": "value"<span class="comma">,</span>
    "flowDescription": "value"<span class="comma">,</span>
    "version": 0<span class="comma">,</span>
    "storageLocation": "value"<span class="comma">,</span>
    "state": "value"<span class="comma">,</span>
    "stateExplanation": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VersionControlInformationEntity" class="type hidden">
    <h3>VersionControlInformationEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>processGroupRevision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Revision for the Process Group
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionControlInformation</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">VersionControlInformationDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Version Control information
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "processGroupRevision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
    "versionControlInformation": <span class="nested collapsed"><span class="nested-id hidden">VersionControlInformationDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VersionInfoDTO" class="type hidden">
    <h3>VersionInfoDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>niFiVersion</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The version of this NiFi.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>javaVendor</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Java JVM vendor
                        
                        </td>
                </tr>
            
                <tr>
                    <td>javaVersion</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Java version
                        
                        </td>
                </tr>
            
                <tr>
                    <td>osName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Host operating system name
                        
                        </td>
                </tr>
            
                <tr>
                    <td>osVersion</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Host operating system version
                        
                        </td>
                </tr>
            
                <tr>
                    <td>osArchitecture</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Host operating system architecture
                        
                        </td>
                </tr>
            
                <tr>
                    <td>buildTag</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Build tag
                        
                        </td>
                </tr>
            
                <tr>
                    <td>buildRevision</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Build revision or commit hash
                        
                        </td>
                </tr>
            
                <tr>
                    <td>buildBranch</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Build branch
                        
                        </td>
                </tr>
            
                <tr>
                    <td>buildTimestamp</td>
                    <td>
                        
                            
                            
                                string (date-time)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Build timestamp
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "niFiVersion": "value"<span class="comma">,</span>
    "javaVendor": "value"<span class="comma">,</span>
    "javaVersion": "value"<span class="comma">,</span>
    "osName": "value"<span class="comma">,</span>
    "osVersion": "value"<span class="comma">,</span>
    "osArchitecture": "value"<span class="comma">,</span>
    "buildTag": "value"<span class="comma">,</span>
    "buildRevision": "value"<span class="comma">,</span>
    "buildBranch": "value"<span class="comma">,</span>
    "buildTimestamp": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VersionedConnection" class="type hidden">
    <h3>VersionedConnection</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>identifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component's unique identifier
                        
                        </td>
                </tr>
            
                <tr>
                    <td>instanceIdentifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The instance ID of an existing component that is described by this VersionedComponent, or null if this is not mapped to an instantiated component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component's name
                        
                        </td>
                </tr>
            
                <tr>
                    <td>comments</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The user-supplied comments for the component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">Position</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component's position on the graph
                        
                        </td>
                </tr>
            
                <tr>
                    <td>source</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ConnectableComponent</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The source of the connection.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>destination</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">ConnectableComponent</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The destination of the connection.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>labelIndex</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The index of the bend point where to place the connection label.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>zIndex</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The z index of the connection.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>selectedRelationships</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The selected relationship that comprise the connection.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>backPressureObjectThreshold</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The object count threshold for determining when back pressure is applied. Updating this value is a passive change in the sense that it won't impact whether existing files over the limit are affected but it does help feeder processors to stop pushing too much into this work queue.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>backPressureDataSizeThreshold</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The object data size threshold for determining when back pressure is applied. Updating this value is a passive change in the sense that it won't impact whether existing files over the limit are affected but it does help feeder processors to stop pushing too much into this work queue.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowFileExpiration</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The amount of time a flow file may be in the flow before it will be automatically aged out of the flow. Once a flow file reaches this age it will be terminated from the flow the next time a processor attempts to start work on it.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>prioritizers</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The comparators used to prioritize the queue.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bends</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">Position</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The bend points on the connection.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>loadBalanceStrategy</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Strategy to use for load balancing data across the cluster, or null, if no Load Balance Strategy has been specified.
                         Allowable values: DO_NOT_LOAD_BALANCE, PARTITION_BY_ATTRIBUTE, ROUND_ROBIN, SINGLE_NODE
                        </td>
                </tr>
            
                <tr>
                    <td>partitioningAttribute</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The attribute to use for partitioning data as it is load balanced across the cluster. If the Load Balance Strategy is configured to use PARTITION_BY_ATTRIBUTE, the value returned by this method is the name of the FlowFile Attribute that will be used to determine which node in the cluster should receive a given FlowFile. If the Load Balance Strategy is unset or is set to any other value, the Partitioning Attribute has no effect.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>loadBalanceCompression</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not compression should be used when transferring FlowFiles between nodes
                         Allowable values: DO_NOT_COMPRESS, COMPRESS_ATTRIBUTES_ONLY, COMPRESS_ATTRIBUTES_AND_CONTENT
                        </td>
                </tr>
            
                <tr>
                    <td>componentType</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                         Allowable values: CONNECTION, PROCESSOR, PROCESS_GROUP, REMOTE_PROCESS_GROUP, INPUT_PORT, OUTPUT_PORT, REMOTE_INPUT_PORT, REMOTE_OUTPUT_PORT, FUNNEL, LABEL, CONTROLLER_SERVICE, REPORTING_TASK, PARAMETER_CONTEXT, PARAMETER_PROVIDER, TEMPLATE, FLOW_REGISTRY_CLIENT
                        </td>
                </tr>
            
                <tr>
                    <td>groupIdentifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the Process Group that this component belongs to
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "identifier": "value"<span class="comma">,</span>
    "instanceIdentifier": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "comments": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">Position</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "source": <span class="nested collapsed"><span class="nested-id hidden">ConnectableComponent</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "destination": <span class="nested collapsed"><span class="nested-id hidden">ConnectableComponent</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "labelIndex": 0<span class="comma">,</span>
    "zIndex": 0<span class="comma">,</span>
    "selectedRelationships": ["value"]<span class="comma">,</span>
    "backPressureObjectThreshold": 0<span class="comma">,</span>
    "backPressureDataSizeThreshold": "value"<span class="comma">,</span>
    "flowFileExpiration": "value"<span class="comma">,</span>
    "prioritizers": ["value"]<span class="comma">,</span>
    "bends": [<span class="nested collapsed"><span class="nested-id hidden">Position</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "loadBalanceStrategy": "value"<span class="comma">,</span>
    "partitioningAttribute": "value"<span class="comma">,</span>
    "loadBalanceCompression": "value"<span class="comma">,</span>
    "componentType": "value"<span class="comma">,</span>
    "groupIdentifier": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VersionedControllerService" class="type hidden">
    <h3>VersionedControllerService</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>identifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component's unique identifier
                        
                        </td>
                </tr>
            
                <tr>
                    <td>instanceIdentifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The instance ID of an existing component that is described by this VersionedComponent, or null if this is not mapped to an instantiated component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component's name
                        
                        </td>
                </tr>
            
                <tr>
                    <td>comments</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The user-supplied comments for the component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">Position</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component's position on the graph
                        
                        </td>
                </tr>
            
                <tr>
                    <td>type</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The type of the extension component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bundle</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">Bundle</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Information about the bundle from which the component came
                        
                        </td>
                </tr>
            
                <tr>
                    <td>properties</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The properties for the component. Properties whose value is not set will only contain the property name.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>propertyDescriptors</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The property descriptors for the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>controllerServiceApis</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">ControllerServiceAPI</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Lists the APIs this Controller Service implements.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>annotationData</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The annotation for the controller service. This is how the custom UI relays configuration to the controller service.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>scheduledState</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ScheduledState denoting whether the Controller Service is ENABLED or DISABLED
                         Allowable values: ENABLED, DISABLED, RUNNING
                        </td>
                </tr>
            
                <tr>
                    <td>bulletinLevel</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The level at which the controller service will report bulletins.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>componentType</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                         Allowable values: CONNECTION, PROCESSOR, PROCESS_GROUP, REMOTE_PROCESS_GROUP, INPUT_PORT, OUTPUT_PORT, REMOTE_INPUT_PORT, REMOTE_OUTPUT_PORT, FUNNEL, LABEL, CONTROLLER_SERVICE, REPORTING_TASK, PARAMETER_CONTEXT, PARAMETER_PROVIDER, TEMPLATE, FLOW_REGISTRY_CLIENT
                        </td>
                </tr>
            
                <tr>
                    <td>groupIdentifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the Process Group that this component belongs to
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "identifier": "value"<span class="comma">,</span>
    "instanceIdentifier": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "comments": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">Position</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "type": "value"<span class="comma">,</span>
    "bundle": <span class="nested collapsed"><span class="nested-id hidden">Bundle</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "properties": <span class="open-object">&#123;
        "name": "value"
    &#125;</span><span class="comma">,</span>
    "propertyDescriptors": <span class="open-object">&#123;
        "name": <span class="nested collapsed"><span class="nested-id hidden">VersionedPropertyDescriptor</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>
    &#125;</span><span class="comma">,</span>
    "controllerServiceApis": [<span class="nested collapsed"><span class="nested-id hidden">ControllerServiceAPI</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "annotationData": "value"<span class="comma">,</span>
    "scheduledState": "value"<span class="comma">,</span>
    "bulletinLevel": "value"<span class="comma">,</span>
    "componentType": "value"<span class="comma">,</span>
    "groupIdentifier": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VersionedFlowCoordinates" class="type hidden">
    <h3>VersionedFlowCoordinates</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>registryId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The identifier of the Flow Registry that contains the flow
                        
                        </td>
                </tr>
            
                <tr>
                    <td>storageLocation</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The location of the Flow Registry that stores the flow
                        
                        </td>
                </tr>
            
                <tr>
                    <td>registryUrl</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URL of the Flow Registry that contains the flow
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bucketId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The UUID of the bucket that the flow resides in
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The UUID of the flow
                        
                        </td>
                </tr>
            
                <tr>
                    <td>version</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The version of the flow
                        
                        </td>
                </tr>
            
                <tr>
                    <td>latest</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not these coordinates point to the latest version of the flow
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "registryId": "value"<span class="comma">,</span>
    "storageLocation": "value"<span class="comma">,</span>
    "registryUrl": "value"<span class="comma">,</span>
    "bucketId": "value"<span class="comma">,</span>
    "flowId": "value"<span class="comma">,</span>
    "version": 0<span class="comma">,</span>
    "latest": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VersionedFlowDTO" class="type hidden">
    <h3>VersionedFlowDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>registryId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the registry that the flow is tracked to
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bucketId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the bucket where the flow is stored
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the flow
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the flow
                        
                        </td>
                </tr>
            
                <tr>
                    <td>description</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A description of the flow
                        
                        </td>
                </tr>
            
                <tr>
                    <td>comments</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Comments for the changeset
                        
                        </td>
                </tr>
            
                <tr>
                    <td>action</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The action being performed
                         Allowable values: COMMIT, FORCE_COMMIT
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "registryId": "value"<span class="comma">,</span>
    "bucketId": "value"<span class="comma">,</span>
    "flowId": "value"<span class="comma">,</span>
    "flowName": "value"<span class="comma">,</span>
    "description": "value"<span class="comma">,</span>
    "comments": "value"<span class="comma">,</span>
    "action": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VersionedFlowEntity" class="type hidden">
    <h3>VersionedFlowEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>versionedFlow</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">VersionedFlowDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The versioned flow
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "versionedFlow": <span class="nested collapsed"><span class="nested-id hidden">VersionedFlowDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VersionedFlowSnapshotEntity" class="type hidden">
    <h3>VersionedFlowSnapshotEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>versionedFlowSnapshot</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RegisteredFlowSnapshot</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The versioned flow snapshot
                        
                        </td>
                </tr>
            
                <tr>
                    <td>processGroupRevision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Revision of the Process Group under Version Control
                        
                        </td>
                </tr>
            
                <tr>
                    <td>registryId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the Registry that this flow belongs to
                        
                        </td>
                </tr>
            
                <tr>
                    <td>updateDescendantVersionedFlows</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>If the Process Group to be updated has a child or descendant Process Group that is also under Version Control, this specifies whether or not the contents of that child/descendant Process Group should be updated.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>disconnectedNodeAcknowledged</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Acknowledges that this node is disconnected to allow for mutable requests to proceed.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "versionedFlowSnapshot": <span class="nested collapsed"><span class="nested-id hidden">RegisteredFlowSnapshot</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "processGroupRevision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "registryId": "value"<span class="comma">,</span>
    "updateDescendantVersionedFlows": true<span class="comma">,</span>
    "disconnectedNodeAcknowledged": true<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VersionedFlowSnapshotMetadataEntity" class="type hidden">
    <h3>VersionedFlowSnapshotMetadataEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>versionedFlowSnapshotMetadata</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RegisteredFlowSnapshotMetadata</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The collection of registered flow snapshot metadata
                        
                        </td>
                </tr>
            
                <tr>
                    <td>registryId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the Registry that this flow belongs to
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "versionedFlowSnapshotMetadata": <span class="nested collapsed"><span class="nested-id hidden">RegisteredFlowSnapshotMetadata</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "registryId": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VersionedFlowSnapshotMetadataSetEntity" class="type hidden">
    <h3>VersionedFlowSnapshotMetadataSetEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>versionedFlowSnapshotMetadataSet</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">VersionedFlowSnapshotMetadataEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "versionedFlowSnapshotMetadataSet": [<span class="nested collapsed"><span class="nested-id hidden">VersionedFlowSnapshotMetadataEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VersionedFlowUpdateRequestDTO" class="type hidden">
    <h3>VersionedFlowUpdateRequestDTO</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>requestId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The unique ID of this request.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>processGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The unique ID of the Process Group being updated
                        
                        </td>
                </tr>
            
                <tr>
                    <td>uri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The URI for future requests to this drop request.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>lastUpdated</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The last time this request was updated.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>complete</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not this request has completed
                        
                        </td>
                </tr>
            
                <tr>
                    <td>failureReason</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>An explanation of why this request failed, or null if this request has not failed
                        
                        </td>
                </tr>
            
                <tr>
                    <td>percentCompleted</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The percentage complete for the request, between 0 and 100
                        
                        </td>
                </tr>
            
                <tr>
                    <td>state</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The state of the request
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionControlInformation</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">VersionControlInformationDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The VersionControlInformation that describes where the Versioned Flow is located; this may not be populated until the request is completed.
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "requestId": "value"<span class="comma">,</span>
    "processGroupId": "value"<span class="comma">,</span>
    "uri": "value"<span class="comma">,</span>
    "lastUpdated": "value"<span class="comma">,</span>
    "complete": true<span class="comma">,</span>
    "failureReason": "value"<span class="comma">,</span>
    "percentCompleted": 0<span class="comma">,</span>
    "state": "value"<span class="comma">,</span>
    "versionControlInformation": <span class="nested collapsed"><span class="nested-id hidden">VersionControlInformationDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VersionedFlowUpdateRequestEntity" class="type hidden">
    <h3>VersionedFlowUpdateRequestEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>processGroupRevision</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">RevisionDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The revision for the Process Group being updated.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>request</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">VersionedFlowUpdateRequestDTO</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Flow Update Request
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "processGroupRevision": <span class="nested collapsed"><span class="nested-id hidden">RevisionDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "request": <span class="nested collapsed"><span class="nested-id hidden">VersionedFlowUpdateRequestDTO</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VersionedFlowsEntity" class="type hidden">
    <h3>VersionedFlowsEntity</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>versionedFlows</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">VersionedFlowEntity</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "versionedFlows": [<span class="nested collapsed"><span class="nested-id hidden">VersionedFlowEntity</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VersionedFunnel" class="type hidden">
    <h3>VersionedFunnel</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>identifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component's unique identifier
                        
                        </td>
                </tr>
            
                <tr>
                    <td>instanceIdentifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The instance ID of an existing component that is described by this VersionedComponent, or null if this is not mapped to an instantiated component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component's name
                        
                        </td>
                </tr>
            
                <tr>
                    <td>comments</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The user-supplied comments for the component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">Position</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component's position on the graph
                        
                        </td>
                </tr>
            
                <tr>
                    <td>componentType</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                         Allowable values: CONNECTION, PROCESSOR, PROCESS_GROUP, REMOTE_PROCESS_GROUP, INPUT_PORT, OUTPUT_PORT, REMOTE_INPUT_PORT, REMOTE_OUTPUT_PORT, FUNNEL, LABEL, CONTROLLER_SERVICE, REPORTING_TASK, PARAMETER_CONTEXT, PARAMETER_PROVIDER, TEMPLATE, FLOW_REGISTRY_CLIENT
                        </td>
                </tr>
            
                <tr>
                    <td>groupIdentifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the Process Group that this component belongs to
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "identifier": "value"<span class="comma">,</span>
    "instanceIdentifier": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "comments": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">Position</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "componentType": "value"<span class="comma">,</span>
    "groupIdentifier": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VersionedLabel" class="type hidden">
    <h3>VersionedLabel</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>identifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component's unique identifier
                        
                        </td>
                </tr>
            
                <tr>
                    <td>instanceIdentifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The instance ID of an existing component that is described by this VersionedComponent, or null if this is not mapped to an instantiated component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component's name
                        
                        </td>
                </tr>
            
                <tr>
                    <td>comments</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The user-supplied comments for the component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">Position</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component's position on the graph
                        
                        </td>
                </tr>
            
                <tr>
                    <td>label</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The text that appears in the label.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>zIndex</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The z index of the connection.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>width</td>
                    <td>
                        
                            
                            
                                number (double)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The width of the label in pixels when at a 1:1 scale.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>height</td>
                    <td>
                        
                            
                            
                                number (double)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The height of the label in pixels when at a 1:1 scale.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>style</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The styles for this label (font-size : 12px, background-color : #eee, etc).
                        
                        </td>
                </tr>
            
                <tr>
                    <td>componentType</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                         Allowable values: CONNECTION, PROCESSOR, PROCESS_GROUP, REMOTE_PROCESS_GROUP, INPUT_PORT, OUTPUT_PORT, REMOTE_INPUT_PORT, REMOTE_OUTPUT_PORT, FUNNEL, LABEL, CONTROLLER_SERVICE, REPORTING_TASK, PARAMETER_CONTEXT, PARAMETER_PROVIDER, TEMPLATE, FLOW_REGISTRY_CLIENT
                        </td>
                </tr>
            
                <tr>
                    <td>groupIdentifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the Process Group that this component belongs to
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "identifier": "value"<span class="comma">,</span>
    "instanceIdentifier": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "comments": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">Position</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "label": "value"<span class="comma">,</span>
    "zIndex": 0<span class="comma">,</span>
    "width": 0.0<span class="comma">,</span>
    "height": 0.0<span class="comma">,</span>
    "style": <span class="open-object">&#123;
        "name": "value"
    &#125;</span><span class="comma">,</span>
    "componentType": "value"<span class="comma">,</span>
    "groupIdentifier": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VersionedParameter" class="type hidden">
    <h3>VersionedParameter</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the parameter
                        
                        </td>
                </tr>
            
                <tr>
                    <td>description</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The description of the param
                        
                        </td>
                </tr>
            
                <tr>
                    <td>sensitive</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not the parameter value is sensitive
                        
                        </td>
                </tr>
            
                <tr>
                    <td>provided</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not the parameter value is provided by a ParameterProvider
                        
                        </td>
                </tr>
            
                <tr>
                    <td>value</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The value of the parameter
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "name": "value"<span class="comma">,</span>
    "description": "value"<span class="comma">,</span>
    "sensitive": true<span class="comma">,</span>
    "provided": true<span class="comma">,</span>
    "value": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VersionedParameterContext" class="type hidden">
    <h3>VersionedParameterContext</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>identifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component's unique identifier
                        
                        </td>
                </tr>
            
                <tr>
                    <td>instanceIdentifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The instance ID of an existing component that is described by this VersionedComponent, or null if this is not mapped to an instantiated component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component's name
                        
                        </td>
                </tr>
            
                <tr>
                    <td>comments</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The user-supplied comments for the component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">Position</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component's position on the graph
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parameters</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">VersionedParameter</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The parameters in the context
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inheritedParameterContexts</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The names of additional parameter contexts from which to inherit parameters
                        
                        </td>
                </tr>
            
                <tr>
                    <td>description</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The description of the parameter context
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parameterProvider</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The identifier of an optional parameter provider
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parameterGroupName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The corresponding parameter group name fetched from the parameter provider, if applicable
                        
                        </td>
                </tr>
            
                <tr>
                    <td>synchronized</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>True if the parameter provider is set and the context should receive updates when its parameters are next fetched
                        
                        </td>
                </tr>
            
                <tr>
                    <td>componentType</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                         Allowable values: CONNECTION, PROCESSOR, PROCESS_GROUP, REMOTE_PROCESS_GROUP, INPUT_PORT, OUTPUT_PORT, REMOTE_INPUT_PORT, REMOTE_OUTPUT_PORT, FUNNEL, LABEL, CONTROLLER_SERVICE, REPORTING_TASK, PARAMETER_CONTEXT, PARAMETER_PROVIDER, TEMPLATE, FLOW_REGISTRY_CLIENT
                        </td>
                </tr>
            
                <tr>
                    <td>groupIdentifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the Process Group that this component belongs to
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "identifier": "value"<span class="comma">,</span>
    "instanceIdentifier": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "comments": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">Position</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "parameters": [<span class="nested collapsed"><span class="nested-id hidden">VersionedParameter</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "inheritedParameterContexts": ["value"]<span class="comma">,</span>
    "description": "value"<span class="comma">,</span>
    "parameterProvider": "value"<span class="comma">,</span>
    "parameterGroupName": "value"<span class="comma">,</span>
    "synchronized": true<span class="comma">,</span>
    "componentType": "value"<span class="comma">,</span>
    "groupIdentifier": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VersionedPort" class="type hidden">
    <h3>VersionedPort</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>identifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component's unique identifier
                        
                        </td>
                </tr>
            
                <tr>
                    <td>instanceIdentifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The instance ID of an existing component that is described by this VersionedComponent, or null if this is not mapped to an instantiated component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component's name
                        
                        </td>
                </tr>
            
                <tr>
                    <td>comments</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The user-supplied comments for the component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">Position</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component's position on the graph
                        
                        </td>
                </tr>
            
                <tr>
                    <td>type</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The type of port.
                         Allowable values: INPUT_PORT, OUTPUT_PORT
                        </td>
                </tr>
            
                <tr>
                    <td>concurrentlySchedulableTaskCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of tasks that should be concurrently scheduled for the port.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>scheduledState</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The scheduled state of the component
                         Allowable values: ENABLED, DISABLED, RUNNING
                        </td>
                </tr>
            
                <tr>
                    <td>allowRemoteAccess</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not this port allows remote access for site-to-site
                        
                        </td>
                </tr>
            
                <tr>
                    <td>componentType</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                         Allowable values: CONNECTION, PROCESSOR, PROCESS_GROUP, REMOTE_PROCESS_GROUP, INPUT_PORT, OUTPUT_PORT, REMOTE_INPUT_PORT, REMOTE_OUTPUT_PORT, FUNNEL, LABEL, CONTROLLER_SERVICE, REPORTING_TASK, PARAMETER_CONTEXT, PARAMETER_PROVIDER, TEMPLATE, FLOW_REGISTRY_CLIENT
                        </td>
                </tr>
            
                <tr>
                    <td>groupIdentifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the Process Group that this component belongs to
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "identifier": "value"<span class="comma">,</span>
    "instanceIdentifier": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "comments": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">Position</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "type": "value"<span class="comma">,</span>
    "concurrentlySchedulableTaskCount": 0<span class="comma">,</span>
    "scheduledState": "value"<span class="comma">,</span>
    "allowRemoteAccess": true<span class="comma">,</span>
    "componentType": "value"<span class="comma">,</span>
    "groupIdentifier": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VersionedProcessGroup" class="type hidden">
    <h3>VersionedProcessGroup</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>identifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component's unique identifier
                        
                        </td>
                </tr>
            
                <tr>
                    <td>instanceIdentifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The instance ID of an existing component that is described by this VersionedComponent, or null if this is not mapped to an instantiated component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component's name
                        
                        </td>
                </tr>
            
                <tr>
                    <td>comments</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The user-supplied comments for the component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">Position</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component's position on the graph
                        
                        </td>
                </tr>
            
                <tr>
                    <td>processGroups</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">VersionedProcessGroup</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The child Process Groups
                        
                        </td>
                </tr>
            
                <tr>
                    <td>remoteProcessGroups</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">VersionedRemoteProcessGroup</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Remote Process Groups
                        
                        </td>
                </tr>
            
                <tr>
                    <td>processors</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">VersionedProcessor</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Processors
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inputPorts</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">VersionedPort</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Input Ports
                        
                        </td>
                </tr>
            
                <tr>
                    <td>outputPorts</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">VersionedPort</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Output Ports
                        
                        </td>
                </tr>
            
                <tr>
                    <td>connections</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">VersionedConnection</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Connections
                        
                        </td>
                </tr>
            
                <tr>
                    <td>labels</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">VersionedLabel</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Labels
                        
                        </td>
                </tr>
            
                <tr>
                    <td>funnels</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">VersionedFunnel</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Funnels
                        
                        </td>
                </tr>
            
                <tr>
                    <td>controllerServices</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">VersionedControllerService</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Controller Services
                        
                        </td>
                </tr>
            
                <tr>
                    <td>versionedFlowCoordinates</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">VersionedFlowCoordinates</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The coordinates where the remote flow is stored, or null if the Process Group is not directly under Version Control
                        
                        </td>
                </tr>
            
                <tr>
                    <td>variables</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Variables in the Variable Registry for this Process Group (not including any ancestor or descendant Process Groups)
                        
                        </td>
                </tr>
            
                <tr>
                    <td>parameterContextName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the parameter context used by this process group
                        
                        </td>
                </tr>
            
                <tr>
                    <td>defaultFlowFileExpiration</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The default FlowFile Expiration for this Process Group.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>defaultBackPressureObjectThreshold</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Default value used in this Process Group for the maximum number of objects that can be queued before back pressure is applied.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>defaultBackPressureDataSizeThreshold</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Default value used in this Process Group for the maximum data size of objects that can be queued before back pressure is applied.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowFileConcurrency</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The configured FlowFile Concurrency for the Process Group
                        
                        </td>
                </tr>
            
                <tr>
                    <td>flowFileOutboundPolicy</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The FlowFile Outbound Policy for the Process Group
                        
                        </td>
                </tr>
            
                <tr>
                    <td>componentType</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                         Allowable values: CONNECTION, PROCESSOR, PROCESS_GROUP, REMOTE_PROCESS_GROUP, INPUT_PORT, OUTPUT_PORT, REMOTE_INPUT_PORT, REMOTE_OUTPUT_PORT, FUNNEL, LABEL, CONTROLLER_SERVICE, REPORTING_TASK, PARAMETER_CONTEXT, PARAMETER_PROVIDER, TEMPLATE, FLOW_REGISTRY_CLIENT
                        </td>
                </tr>
            
                <tr>
                    <td>groupIdentifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the Process Group that this component belongs to
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "identifier": "value"<span class="comma">,</span>
    "instanceIdentifier": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "comments": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">Position</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "processGroups": [<span class="nested collapsed"><span class="nested-id hidden">VersionedProcessGroup</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "remoteProcessGroups": [<span class="nested collapsed"><span class="nested-id hidden">VersionedRemoteProcessGroup</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "processors": [<span class="nested collapsed"><span class="nested-id hidden">VersionedProcessor</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "inputPorts": [<span class="nested collapsed"><span class="nested-id hidden">VersionedPort</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "outputPorts": [<span class="nested collapsed"><span class="nested-id hidden">VersionedPort</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "connections": [<span class="nested collapsed"><span class="nested-id hidden">VersionedConnection</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "labels": [<span class="nested collapsed"><span class="nested-id hidden">VersionedLabel</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "funnels": [<span class="nested collapsed"><span class="nested-id hidden">VersionedFunnel</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "controllerServices": [<span class="nested collapsed"><span class="nested-id hidden">VersionedControllerService</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "versionedFlowCoordinates": <span class="nested collapsed"><span class="nested-id hidden">VersionedFlowCoordinates</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "variables": <span class="open-object">&#123;
        "name": "value"
    &#125;</span><span class="comma">,</span>
    "parameterContextName": "value"<span class="comma">,</span>
    "defaultFlowFileExpiration": "value"<span class="comma">,</span>
    "defaultBackPressureObjectThreshold": 0<span class="comma">,</span>
    "defaultBackPressureDataSizeThreshold": "value"<span class="comma">,</span>
    "flowFileConcurrency": "value"<span class="comma">,</span>
    "flowFileOutboundPolicy": "value"<span class="comma">,</span>
    "componentType": "value"<span class="comma">,</span>
    "groupIdentifier": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VersionedProcessor" class="type hidden">
    <h3>VersionedProcessor</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>identifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component's unique identifier
                        
                        </td>
                </tr>
            
                <tr>
                    <td>instanceIdentifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The instance ID of an existing component that is described by this VersionedComponent, or null if this is not mapped to an instantiated component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component's name
                        
                        </td>
                </tr>
            
                <tr>
                    <td>comments</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The user-supplied comments for the component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">Position</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component's position on the graph
                        
                        </td>
                </tr>
            
                <tr>
                    <td>type</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The type of the extension component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bundle</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">Bundle</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Information about the bundle from which the component came
                        
                        </td>
                </tr>
            
                <tr>
                    <td>properties</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The properties for the component. Properties whose value is not set will only contain the property name.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>propertyDescriptors</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The property descriptors for the component.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>style</td>
                    <td>
                        
                            
                            
                                object
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Stylistic data for rendering in a UI
                        
                        </td>
                </tr>
            
                <tr>
                    <td>annotationData</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The annotation data for the processor used to relay configuration between a custom UI and the procesosr.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>schedulingPeriod</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The frequency with which to schedule the processor. The format of the value will depend on th value of schedulingStrategy.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>schedulingStrategy</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates whether the processor should be scheduled to run in event or timer driven mode.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>executionNode</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Indicates the node where the process will execute.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>penaltyDuration</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The amout of time that is used when the process penalizes a flowfile.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>yieldDuration</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The amount of time that must elapse before this processor is scheduled again after yielding.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>bulletinLevel</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The level at which the processor will report bulletins.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>runDurationMillis</td>
                    <td>
                        
                            
                            
                                integer (int64)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The run duration for the processor in milliseconds.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>concurrentlySchedulableTaskCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of tasks that should be concurrently schedule for the processor. If the processor doesn't allow parallol processing then any positive input will be ignored.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>autoTerminatedRelationships</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The names of all relationships that cause a flow file to be terminated if the relationship is not connected elsewhere. This property differs from the 'isAutoTerminate' property of the RelationshipDTO in that the RelationshipDTO is meant to depict the current configuration, whereas this property can be set in a DTO when updating a Processor in order to change which Relationships should be auto-terminated.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>scheduledState</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The scheduled state of the component
                         Allowable values: ENABLED, DISABLED, RUNNING
                        </td>
                </tr>
            
                <tr>
                    <td>retryCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Overall number of retries.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>retriedRelationships</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>All the relationships should be retried.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>backoffMechanism</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Determines whether the FlowFile should be penalized or the processor should be yielded between retries.
                         Allowable values: PENALIZE_FLOWFILE, YIELD_PROCESSOR
                        </td>
                </tr>
            
                <tr>
                    <td>maxBackoffPeriod</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Maximum amount of time to be waited during a retry period.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>componentType</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                         Allowable values: CONNECTION, PROCESSOR, PROCESS_GROUP, REMOTE_PROCESS_GROUP, INPUT_PORT, OUTPUT_PORT, REMOTE_INPUT_PORT, REMOTE_OUTPUT_PORT, FUNNEL, LABEL, CONTROLLER_SERVICE, REPORTING_TASK, PARAMETER_CONTEXT, PARAMETER_PROVIDER, TEMPLATE, FLOW_REGISTRY_CLIENT
                        </td>
                </tr>
            
                <tr>
                    <td>groupIdentifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the Process Group that this component belongs to
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "identifier": "value"<span class="comma">,</span>
    "instanceIdentifier": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "comments": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">Position</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "type": "value"<span class="comma">,</span>
    "bundle": <span class="nested collapsed"><span class="nested-id hidden">Bundle</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "properties": <span class="open-object">&#123;
        "name": "value"
    &#125;</span><span class="comma">,</span>
    "propertyDescriptors": <span class="open-object">&#123;
        "name": <span class="nested collapsed"><span class="nested-id hidden">VersionedPropertyDescriptor</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>
    &#125;</span><span class="comma">,</span>
    "style": <span class="open-object">&#123;
        "name": "value"
    &#125;</span><span class="comma">,</span>
    "annotationData": "value"<span class="comma">,</span>
    "schedulingPeriod": "value"<span class="comma">,</span>
    "schedulingStrategy": "value"<span class="comma">,</span>
    "executionNode": "value"<span class="comma">,</span>
    "penaltyDuration": "value"<span class="comma">,</span>
    "yieldDuration": "value"<span class="comma">,</span>
    "bulletinLevel": "value"<span class="comma">,</span>
    "runDurationMillis": 0<span class="comma">,</span>
    "concurrentlySchedulableTaskCount": 0<span class="comma">,</span>
    "autoTerminatedRelationships": ["value"]<span class="comma">,</span>
    "scheduledState": "value"<span class="comma">,</span>
    "retryCount": 0<span class="comma">,</span>
    "retriedRelationships": ["value"]<span class="comma">,</span>
    "backoffMechanism": "value"<span class="comma">,</span>
    "maxBackoffPeriod": "value"<span class="comma">,</span>
    "componentType": "value"<span class="comma">,</span>
    "groupIdentifier": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VersionedPropertyDescriptor" class="type hidden">
    <h3>VersionedPropertyDescriptor</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The name of the property
                        
                        </td>
                </tr>
            
                <tr>
                    <td>displayName</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The display name of the property
                        
                        </td>
                </tr>
            
                <tr>
                    <td>identifiesControllerService</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not the property provides the identifier of a Controller Service
                        
                        </td>
                </tr>
            
                <tr>
                    <td>sensitive</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether or not the property is considered sensitive
                        
                        </td>
                </tr>
            
                <tr>
                    <td>resourceDefinition</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">VersionedResourceDefinition</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Returns the Resource Definition that defines which type(s) of resource(s) this property references, if any
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "name": "value"<span class="comma">,</span>
    "displayName": "value"<span class="comma">,</span>
    "identifiesControllerService": true<span class="comma">,</span>
    "sensitive": true<span class="comma">,</span>
    "resourceDefinition": <span class="nested collapsed"><span class="nested-id hidden">VersionedResourceDefinition</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VersionedRemoteGroupPort" class="type hidden">
    <h3>VersionedRemoteGroupPort</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>identifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component's unique identifier
                        
                        </td>
                </tr>
            
                <tr>
                    <td>instanceIdentifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The instance ID of an existing component that is described by this VersionedComponent, or null if this is not mapped to an instantiated component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component's name
                        
                        </td>
                </tr>
            
                <tr>
                    <td>comments</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The user-supplied comments for the component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">Position</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component's position on the graph
                        
                        </td>
                </tr>
            
                <tr>
                    <td>remoteGroupId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The id of the remote process group that the port resides in.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>concurrentlySchedulableTaskCount</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The number of task that may transmit flowfiles to the target port concurrently.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>useCompression</td>
                    <td>
                        
                            
                            
                                boolean
                            
                        
                    </td>
                    <td>optional</td>
                    <td>Whether the flowfiles are compressed when sent to the target port.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>batchSize</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">BatchSize</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The batch settings for data transmission.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>componentType</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                         Allowable values: CONNECTION, PROCESSOR, PROCESS_GROUP, REMOTE_PROCESS_GROUP, INPUT_PORT, OUTPUT_PORT, REMOTE_INPUT_PORT, REMOTE_OUTPUT_PORT, FUNNEL, LABEL, CONTROLLER_SERVICE, REPORTING_TASK, PARAMETER_CONTEXT, PARAMETER_PROVIDER, TEMPLATE, FLOW_REGISTRY_CLIENT
                        </td>
                </tr>
            
                <tr>
                    <td>targetId</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the port on the target NiFi instance
                        
                        </td>
                </tr>
            
                <tr>
                    <td>scheduledState</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The scheduled state of the component
                         Allowable values: ENABLED, DISABLED, RUNNING
                        </td>
                </tr>
            
                <tr>
                    <td>groupIdentifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the Process Group that this component belongs to
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "identifier": "value"<span class="comma">,</span>
    "instanceIdentifier": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "comments": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">Position</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "remoteGroupId": "value"<span class="comma">,</span>
    "concurrentlySchedulableTaskCount": 0<span class="comma">,</span>
    "useCompression": true<span class="comma">,</span>
    "batchSize": <span class="nested collapsed"><span class="nested-id hidden">BatchSize</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "componentType": "value"<span class="comma">,</span>
    "targetId": "value"<span class="comma">,</span>
    "scheduledState": "value"<span class="comma">,</span>
    "groupIdentifier": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VersionedRemoteProcessGroup" class="type hidden">
    <h3>VersionedRemoteProcessGroup</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>identifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component's unique identifier
                        
                        </td>
                </tr>
            
                <tr>
                    <td>instanceIdentifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The instance ID of an existing component that is described by this VersionedComponent, or null if this is not mapped to an instantiated component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>name</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component's name
                        
                        </td>
                </tr>
            
                <tr>
                    <td>comments</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The user-supplied comments for the component
                        
                        </td>
                </tr>
            
                <tr>
                    <td>position</td>
                    <td>
                        
                            
                                <a class="type-link" href="javascript:void(0);">Position</a>
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The component's position on the graph
                        
                        </td>
                </tr>
            
                <tr>
                    <td>targetUri</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>[DEPRECATED] The target URI of the remote process group. If target uri is not set, but uris are set, then returns the first uri in the uris. If neither target uri nor uris are set, then returns null.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>targetUris</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The target URIs of the remote process group. If target uris is not set but target uri is set, then returns the single target uri. If neither target uris nor target uri is set, then returns null.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>communicationsTimeout</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The time period used for the timeout when communicating with the target.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>yieldDuration</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>When yielding, this amount of time must elapse before the remote process group is scheduled again.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>transportProtocol</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The Transport Protocol that is used for Site-to-Site communications
                         Allowable values: RAW, HTTP
                        </td>
                </tr>
            
                <tr>
                    <td>localNetworkInterface</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The local network interface to send/receive data. If not specified, any local address is used. If clustered, all nodes must have an interface with this identifier.
                        
                        </td>
                </tr>
            
                <tr>
                    <td>proxyHost</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>proxyPort</td>
                    <td>
                        
                            
                            
                                integer (int32)
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>proxyUser</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>proxyPassword</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                        
                        </td>
                </tr>
            
                <tr>
                    <td>inputPorts</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">VersionedRemoteGroupPort</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A Set of Input Ports that can be connected to, in order to send data to the remote NiFi instance
                        
                        </td>
                </tr>
            
                <tr>
                    <td>outputPorts</td>
                    <td>
                        
                            
                                array[<a class="type-link" href="javascript:void(0);">VersionedRemoteGroupPort</a>]
                            
                            
                        
                    </td>
                    <td>optional</td>
                    <td>A Set of Output Ports that can be connected to, in order to pull data from the remote NiFi instance
                        
                        </td>
                </tr>
            
                <tr>
                    <td>componentType</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>
                         Allowable values: CONNECTION, PROCESSOR, PROCESS_GROUP, REMOTE_PROCESS_GROUP, INPUT_PORT, OUTPUT_PORT, REMOTE_INPUT_PORT, REMOTE_OUTPUT_PORT, FUNNEL, LABEL, CONTROLLER_SERVICE, REPORTING_TASK, PARAMETER_CONTEXT, PARAMETER_PROVIDER, TEMPLATE, FLOW_REGISTRY_CLIENT
                        </td>
                </tr>
            
                <tr>
                    <td>groupIdentifier</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The ID of the Process Group that this component belongs to
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "identifier": "value"<span class="comma">,</span>
    "instanceIdentifier": "value"<span class="comma">,</span>
    "name": "value"<span class="comma">,</span>
    "comments": "value"<span class="comma">,</span>
    "position": <span class="nested collapsed"><span class="nested-id hidden">Position</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span><span class="comma">,</span>
    "targetUri": "value"<span class="comma">,</span>
    "targetUris": "value"<span class="comma">,</span>
    "communicationsTimeout": "value"<span class="comma">,</span>
    "yieldDuration": "value"<span class="comma">,</span>
    "transportProtocol": "value"<span class="comma">,</span>
    "localNetworkInterface": "value"<span class="comma">,</span>
    "proxyHost": "value"<span class="comma">,</span>
    "proxyPort": 0<span class="comma">,</span>
    "proxyUser": "value"<span class="comma">,</span>
    "proxyPassword": "value"<span class="comma">,</span>
    "inputPorts": [<span class="nested collapsed"><span class="nested-id hidden">VersionedRemoteGroupPort</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "outputPorts": [<span class="nested collapsed"><span class="nested-id hidden">VersionedRemoteGroupPort</span><span class="nested-example"><span class="open-object">&#123;&#8230;&#125;</span></span></span>]<span class="comma">,</span>
    "componentType": "value"<span class="comma">,</span>
    "groupIdentifier": "value"<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
            
<div id="VersionedResourceDefinition" class="type hidden">
    <h3>VersionedResourceDefinition</h3>
    <div class="type-container">
        <table>
            <tr>
                <th>Name</th>
                <th>Type</th>
                <th>Required</th>
                <th>Description</th>
            </tr>
            
                <tr>
                    <td>cardinality</td>
                    <td>
                        
                            
                            
                                string
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The cardinality of the resource
                         Allowable values: SINGLE, MULTIPLE
                        </td>
                </tr>
            
                <tr>
                    <td>resourceTypes</td>
                    <td>
                        
                            
                            
                                array[string]
                            
                        
                    </td>
                    <td>optional</td>
                    <td>The types of resource that the Property Descriptor is allowed to reference
                        
                        </td>
                </tr>
            
        </table>
        <h4>Example JSON</h4>
        <code class="example"><span class="open-object">&#123;
    "cardinality": "value"<span class="comma">,</span>
    "resourceTypes": ["value"]<span class="comma">,</span>
&#125;</span></code>
    </div>
    <div class="close">Close</div>
    <div class="clear"></div>
</div>
        
    </body>
</html>