bigdataadd
bigdataadd

Reputation: 251

Create Controller Service using Nifi API REST

I am trying to create a controller service using nifi api rest but I am blocked because when I try:

InvokeHTTP POST https://hostname/nifi-api/controller/controller-services

using this json

{
  "revision": {
    "version": 0
  },
  "disconnectedNodeAcknowledged": false,
  "component": {
    "name": "DMCS_try",
    "type": "org.apache.nifi.distributed.cache.server.map.DistributedMapCacheServer",
    "bundle": {
      "group": "org.apache.nifi",
      "artifact": "nifi-distributed-cache-services-nar",
      "version": "1.9.0.3.4.1.1-4"
    },
    "state": "ENABLED",
    "properties": {
      "Port": "4555",
      "Maximum Cache Entries": "10000",
      "Eviction Strategy": null,
      "Persistence Directory": null,
      "SSL Context Service": null
    }
}
}

I got this "error"

Node XXXXXXXXX is unable to fulfill this request due to: Unable to modify the controller. Contact the system administrator. Contact the system administrator.

Upvotes: 0

Views: 713

Answers (1)

Bryan Bende
Bryan Bende

Reputation: 18670

Controller services can be created in two different places. One place is in the flow as part of a process group so they can be used by processors, the other place is at the controller level for use by reporting tasks.

The URL you specified is for creating a service at the controller level and therefore whatever identity you are using to authenticate as need permissions to modify the controller (WRITE on /controller). The error message is saying you don't have that permission.

Upvotes: 2

Related Questions