Added: nifi/site/trunk/docs/nifi-docs/rest-api/index.html URL: http://svn.apache.org/viewvc/nifi/site/trunk/docs/nifi-docs/rest-api/index.html?rev=1811008&view=auto ============================================================================== --- nifi/site/trunk/docs/nifi-docs/rest-api/index.html (added) +++ nifi/site/trunk/docs/nifi-docs/rest-api/index.html Tue Oct 3 13:30:16 2017 @@ -0,0 +1,51306 @@ +<!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> + <head> + <title>NiFi Rest Api-1.4.0</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('/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(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.4.0</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">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="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'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'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/download-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 single use access token for downloading FlowFile content.</div> + <div class="clear"></div> + </div> + +<div class="operation hidden"> + + <div class="description"> + The token returned is a base64 encoded string. It is valid for a single request up to five minutes from being issued. It is used as a query parameter name 'access_token'. + </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> + + + + <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>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 the download token because NiFi is not in the appropriate state. (i.e. may not have any tokens to grant or be configured to support username/password login)</td> + </tr> + + <tr> + <td>500</td> + <td> + + string + + </td> + <td>Unable to create download 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/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 'Authorization: Bearer <token>'. + </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'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'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/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'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'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/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'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. The token can be used in the Authorization header in the format 'Authorization: Bearer <token>'. + </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/ui-extension-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 single use access token for accessing a NiFi UI extension.</div> + <div class="clear"></div> + </div> + +<div class="operation hidden"> + + <div class="description"> + The token returned is a base64 encoded string. It is valid for a single request up to five minutes from being issued. It is used as a query parameter name 'access_token'. + </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> + + + + <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>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 the download token because NiFi is not in the appropriate state. (i.e. may not have any tokens to grant or be configured to support username/password login)</td> + </tr> + + <tr> + <td>500</td> + <td> + + string + + </td> + <td>Unable to create download 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">/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>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="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);">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>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}/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> + + + </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
[... 48440 lines stripped ...]