{
  "opencollection": "1.0.0",
  "info": {
    "name": "Ignition Gateway REST access-control agent-management API",
    "version": "8.3.0"
  },
  "request": {
    "auth": {
      "type": "apikey",
      "key": "X-Ignition-API-Token",
      "value": "{{X-Ignition-API-Token}}",
      "placement": "header"
    }
  },
  "items": [
    {
      "info": {
        "name": "agent-management",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Create Agent Management",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "http://{gateway-host}:{port}/data/api/v1/resources/com.inductiveautomation.eam/agent-management",
            "params": [
              {
                "name": "allowInvalidReferences",
                "value": "",
                "type": "query",
                "description": "If true, invalid references will be allowed. Default is false."
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Create a new Agent Management resource"
        },
        {
          "info": {
            "name": "Modify Agent Management",
            "type": "http"
          },
          "http": {
            "method": "PUT",
            "url": "http://{gateway-host}:{port}/data/api/v1/resources/com.inductiveautomation.eam/agent-management",
            "params": [
              {
                "name": "allowInvalidReferences",
                "value": "",
                "type": "query",
                "description": "If true, invalid references will be allowed. Default is false."
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Modify one or more Agent Management resources"
        },
        {
          "info": {
            "name": "Delete Agent Management",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "http://{gateway-host}:{port}/data/api/v1/resources/com.inductiveautomation.eam/agent-management/:name/:signature",
            "params": [
              {
                "name": "name",
                "value": "",
                "type": "path"
              },
              {
                "name": "signature",
                "value": "",
                "type": "path"
              },
              {
                "name": "collection",
                "value": "",
                "type": "query",
                "description": "The configuration collection to delete the resource from"
              },
              {
                "name": "confirm",
                "value": "",
                "type": "query",
                "description": "Whether to confirm the deletion, required when the operation would affect other resources."
              }
            ]
          },
          "docs": "Delete a Agent Management resource by name"
        },
        {
          "info": {
            "name": "Delete Agent Management (multiple)",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "http://{gateway-host}:{port}/data/api/v1/resources/delete/com.inductiveautomation.eam/agent-management",
            "params": [
              {
                "name": "confirm",
                "value": "",
                "type": "query",
                "description": "Whether to confirm the deletion, required when the operation would affect other resources."
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Delete multiple Agent Management resources by name"
        },
        {
          "info": {
            "name": "Get Agent Management Config",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "http://{gateway-host}:{port}/data/api/v1/resources/find/com.inductiveautomation.eam/agent-management/:name",
            "params": [
              {
                "name": "name",
                "value": "",
                "type": "path"
              },
              {
                "name": "collection",
                "value": "",
                "type": "query",
                "description": "The configuration collection to read the resource from"
              }
            ]
          },
          "docs": "Retrieve configuration details about a specific Agent Management resource"
        },
        {
          "info": {
            "name": "List Agent Management Resources",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "http://{gateway-host}:{port}/data/api/v1/resources/list/com.inductiveautomation.eam/agent-management",
            "params": [
              {
                "name": "limit",
                "value": "",
                "type": "query",
                "description": "The maximum number of items to return."
              },
              {
                "name": "offset",
                "value": "",
                "type": "query",
                "description": "The number of items to skip before returning results."
              },
              {
                "name": "sortBy",
                "value": "",
                "type": "query",
                "description": "The name of a field to sort by. Use `asc(fieldName)` or `desc(fieldName)`\nto specify the sort direction as ascending or descending, respectively.\n"
              },
              {
                "name": "search",
                "value": "",
                "type": "query",
                "description": "A search string to filter items by. Terms separated by whitespace."
              },
              {
                "name": "key_0",
                "value": "",
                "type": "query",
                "description": "Filter items by field name, using format like `fieldName[op]=value` where `op` is one of: `eq` (equals), `ne` (not equals), `cn` (contains), `sw` (starts with), `ew` (ends with), `gt` (greater than), `gte` (greater than or equal), `lt` (less than), `lte` (less than or equal), `rgx` (regular expression)."
              }
            ]
          },
          "docs": "List all Agent Management resources, in verbose format, including configuration, metrics, and health checks."
        },
        {
          "info": {
            "name": "Get Agent Management Names",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "http://{gateway-host}:{port}/data/api/v1/resources/names/com.inductiveautomation.eam/agent-management",
            "params": [
              {
                "name": "limit",
                "value": "",
                "type": "query",
                "description": "The maximum number of items to return."
              },
              {
                "name": "offset",
                "value": "",
                "type": "query",
                "description": "The number of items to skip before returning results."
              },
              {
                "name": "sortBy",
                "value": "",
                "type": "query",
                "description": "The name of a field to sort by. Use `asc(fieldName)` or `desc(fieldName)`\nto specify the sort direction as ascending or descending, respectively.\n"
              },
              {
                "name": "search",
                "value": "",
                "type": "query",
                "description": "A search string to filter items by. Terms separated by whitespace."
              },
              {
                "name": "key_0",
                "value": "",
                "type": "query",
                "description": "Filter items by field name, using format like `fieldName[op]=value` where `op` is one of: `eq` (equals), `ne` (not equals), `cn` (contains), `sw` (starts with), `ew` (ends with), `gt` (greater than), `gte` (greater than or equal), `lt` (less than), `lte` (less than or equal), `rgx` (regular expression)."
              }
            ]
          },
          "docs": "List all Agent Management resources, including just names and enabled bit"
        },
        {
          "info": {
            "name": "Rename Agent Management",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "http://{gateway-host}:{port}/data/api/v1/resources/rename/com.inductiveautomation.eam/agent-management/:name",
            "params": [
              {
                "name": "name",
                "value": "",
                "type": "path"
              },
              {
                "name": "collection",
                "value": "",
                "type": "query",
                "description": "The configuration collection to rename the resource in"
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            }
          },
          "docs": "Change the name of a Agent Management resource, and update all references to it"
        },
        {
          "info": {
            "name": "Describe 'Agent Management' Resource Type",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "http://{gateway-host}:{port}/data/api/v1/resources/type/com.inductiveautomation.eam/agent-management"
          },
          "docs": "Describe the Agent Management resource type"
        },
        {
          "info": {
            "name": "EAM Agent Details Overview",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "http://{gateway-host}:{port}/data/eam/api/v1/agent-details/:agentName",
            "params": [
              {
                "name": "agentName",
                "value": "",
                "type": "path"
              }
            ]
          },
          "docs": "Gets the details of a specific EAM agent."
        },
        {
          "info": {
            "name": "EAM Agent License Keys",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "http://{gateway-host}:{port}/data/eam/api/v1/agent-licenses/:agentName",
            "params": [
              {
                "name": "agentName",
                "value": "",
                "type": "path"
              }
            ]
          },
          "docs": "Gets the license keys of a specific EAM agent."
        },
        {
          "info": {
            "name": "Retrieve agent modules",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "http://{gateway-host}:{port}/data/eam/api/v1/agent-management/modules",
            "params": [
              {
                "name": "serverid",
                "value": "",
                "type": "query",
                "description": "An encoded ServerId, such as '_0:0:agentName'"
              }
            ]
          },
          "docs": "Retrieve module information from an agent. This includes module name, version, license status and module state."
        },
        {
          "info": {
            "name": "Retrieve project resources",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "http://{gateway-host}:{port}/data/eam/api/v1/agent-management/project-resources",
            "params": [
              {
                "name": "serverid",
                "value": "",
                "type": "query",
                "description": "An encoded ServerId, such as '_0:0:agentName'"
              },
              {
                "name": "localsystem",
                "value": "",
                "type": "query",
                "description": "Set to True to use the local system as the project source"
              },
              {
                "name": "project",
                "value": "",
                "type": "query",
                "description": "(Required) A project name"
              }
            ]
          },
          "docs": "Retrieve project resource names from an agent or from the local controller. Set the serverid parameter to return projects from a remote gateway, or set the localsystem parameter to True to return projects from the local controller."
        },
        {
          "info": {
            "name": "Retrieve projects names",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "http://{gateway-host}:{port}/data/eam/api/v1/agent-management/projects",
            "params": [
              {
                "name": "serverid",
                "value": "",
                "type": "query",
                "description": "An encoded ServerId, such as '_0:0:agentName'"
              },
              {
                "name": "localsystem",
                "value": "",
                "type": "query",
                "description": "Set to True to use the local system as the project source"
              }
            ]
          },
          "docs": "Retrieve project names from an agent or from the local controller. Set the serverid parameter to return projects from a remote gateway, or set the localsystem parameter to True to return projects from the local controller."
        },
        {
          "info": {
            "name": "Retrieve agent info for upgrade",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "http://{gateway-host}:{port}/data/eam/api/v1/agent-management/upgrade-info",
            "params": [
              {
                "name": "serverids",
                "value": "",
                "type": "query",
                "description": "(Required) A comma-separated list of encoded ServerIds"
              }
            ]
          },
          "docs": "Returns system data about an agent, used to prep a remote upgrade"
        },
        {
          "info": {
            "name": "EAM Agents Status",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "http://{gateway-host}:{port}/data/eam/api/v1/agents",
            "params": [
              {
                "name": "limit",
                "value": "",
                "type": "query",
                "description": "The maximum number of items to return."
              },
              {
                "name": "offset",
                "value": "",
                "type": "query",
                "description": "The number of items to skip before returning results."
              },
              {
                "name": "sortBy",
                "value": "",
                "type": "query",
                "description": "The name of a field to sort by. Use `asc(fieldName)` or `desc(fieldName)`\nto specify the sort direction as ascending or descending, respectively.\n"
              },
              {
                "name": "search",
                "value": "",
                "type": "query",
                "description": "A search string to filter items by. Terms separated by whitespace."
              },
              {
                "name": "key_0",
                "value": "",
                "type": "query",
                "description": "Filter items by field name, using format like `fieldName[op]=value` where `op` is one of: `eq` (equals), `ne` (not equals), `cn` (contains), `sw` (starts with), `ew` (ends with), `gt` (greater than), `gte` (greater than or equal), `lt` (less than), `lte` (less than or equal), `rgx` (regular expression)."
              }
            ]
          },
          "docs": "Displays a list of EAM agents and their status. The list includes agents that are pending approval. This must be called from a controller."
        },
        {
          "info": {
            "name": "EAM Agents by Agent Group",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "http://{gateway-host}:{port}/data/eam/api/v1/agents-by-group",
            "params": [
              {
                "name": "limit",
                "value": "",
                "type": "query",
                "description": "The maximum number of items to return."
              },
              {
                "name": "offset",
                "value": "",
                "type": "query",
                "description": "The number of items to skip before returning results."
              },
              {
                "name": "sortBy",
                "value": "",
                "type": "query",
                "description": "The name of a field to sort by. Use `asc(fieldName)` or `desc(fieldName)`\nto specify the sort direction as ascending or descending, respectively.\n"
              },
              {
                "name": "search",
                "value": "",
                "type": "query",
                "description": "A search string to filter items by. Terms separated by whitespace."
              },
              {
                "name": "key_0",
                "value": "",
                "type": "query",
                "description": "Filter items by field name, using format like `fieldName[op]=value` where `op` is one of: `eq` (equals), `ne` (not equals), `cn` (contains), `sw` (starts with), `ew` (ends with), `gt` (greater than), `gte` (greater than or equal), `lt` (less than), `lte` (less than or equal), `rgx` (regular expression)."
              }
            ]
          },
          "docs": "Gets the connected EAM agents, organized by group. This must be called from a controller."
        },
        {
          "info": {
            "name": "Approve agent",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "http://{gateway-host}:{port}/data/eam/api/v1/approve-agent/:serverid",
            "params": [
              {
                "name": "serverid",
                "value": "",
                "type": "path"
              }
            ]
          },
          "docs": "Approves an EAM agent, which will allow interaction with the controller."
        },
        {
          "info": {
            "name": "Quarantined agents",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "http://{gateway-host}:{port}/data/eam/api/v1/quarantined-agents"
          },
          "docs": "Returns a list of encoded ServerIds of EAM agents waiting for approval."
        },
        {
          "info": {
            "name": "Delete quarantined agent",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "http://{gateway-host}:{port}/data/eam/api/v1/quarantined-agents/:serverid",
            "params": [
              {
                "name": "serverid",
                "value": "",
                "type": "path"
              }
            ]
          },
          "docs": "Deletes a pending EAM agent from the agent quarantine."
        },
        {
          "info": {
            "name": "Upgrade Agent",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "http://{gateway-host}:{port}/data/eam/api/v1/upgrade-agent/:groupName/:agentName",
            "params": [
              {
                "name": "groupName",
                "value": "",
                "type": "path"
              },
              {
                "name": "agentName",
                "value": "",
                "type": "path"
              }
            ]
          },
          "docs": "Upgrade the specified EAM agent"
        }
      ]
    }
  ],
  "bundled": true
}