{
  "opencollection": "1.0.0",
  "info": {
    "name": "external/applications/applications.proto ApplicationsService policies API",
    "version": "version not set"
  },
  "items": [
    {
      "info": {
        "name": "policies",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "Lists all policies",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/apis/iam/v2/policies"
          },
          "docs": "Lists all policies.\n\nAuthorization Action:\n```\niam:policies:list\n```"
        },
        {
          "info": {
            "name": "Creates a custom policy",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "{{baseUrl}}/apis/iam/v2/policies"
          },
          "docs": "Creates a custom IAM policy used to control permissions in Automate.\nA policy is composed of one or more statements that grant permissions to a set of members.\nEach statement contains a role as well as a list of projects.\n\nThe role defines a set of actions that the statement is scoped to.\nThe project list defines the set of resources that the statement is scoped to.\nPass `\"projects\": [\"*\"]` to scope a statement to every project.\n\nA policy's *top-level* projects list defines which projects the po"
        },
        {
          "info": {
            "name": "Gets a policy",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/apis/iam/v2/policies/:id",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "ID of the policy."
              }
            ]
          },
          "docs": "Returns the details for a policy.\n\nAuthorization Action:\n```\niam:policies:get\n```"
        },
        {
          "info": {
            "name": "Updates a custom policy",
            "type": "http"
          },
          "http": {
            "method": "PUT",
            "url": "{{baseUrl}}/apis/iam/v2/policies/:id",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "Unique ID. Cannot be changed."
              }
            ]
          },
          "docs": "This operation overwrites all fields excepting ID,\nincluding those omitted from the request, so be sure to specify all properties.\nProperties that you do not include are reset to empty values.\nThe only exception is the policy ID, which is immutable; it can only be set at creation time.\n\nWhile you can use this endpoint to update members on a policy, if that is the only\nproperty you wish to modify you might find it more convenient to use one of these endpoints instead:\nAdd policy members, Remove p"
        },
        {
          "info": {
            "name": "Deletes a custom policy",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "{{baseUrl}}/apis/iam/v2/policies/:id",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "ID of the policy."
              }
            ]
          },
          "docs": "Deletes a specified custom policy. You cannot delete Chef-managed policies.\n\nAuthorization Action:\n```\niam:policies:delete\n```"
        },
        {
          "info": {
            "name": "Lists policy members",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/apis/iam/v2/policies/:id/members",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "ID of the policy."
              }
            ]
          },
          "docs": "Lists all members of a specific policy.\n\nAuthorization Action:\n```\niam:policyMembers:get\n```"
        },
        {
          "info": {
            "name": "Replaces policy members",
            "type": "http"
          },
          "http": {
            "method": "PUT",
            "url": "{{baseUrl}}/apis/iam/v2/policies/:id/members",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "ID of the policy."
              }
            ]
          },
          "docs": "Replaces the entire member list of a specific policy with a new list.\nYou may use this endpoint to update members of either Custom or Chef-managed policies.\n\nEnsure each element of the members array is in the correct\n[Member Expression](https://automate.chef.io/docs/iam-v2-guide/#member-expressions) format.\n\nAuthorization Action:\n```\niam:policyMembers:update\n```"
        },
        {
          "info": {
            "name": "Adds policy members",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "{{baseUrl}}/apis/iam/v2/policies/:id/members:add",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "ID of the policy."
              }
            ]
          },
          "docs": "Adds members to the member list of a specific policy.\nYou may use this endpoint to update members of either Custom or Chef-managed policies.\n\nEnsure each element of the members array is in the correct\n[Member Expression](https://automate.chef.io/docs/iam-v2-guide/#member-expressions) format.\n\nAuthorization Action:\n```\niam:policyMembers:create\n```"
        },
        {
          "info": {
            "name": "Removes policy members",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "{{baseUrl}}/apis/iam/v2/policies/:id/members:remove",
            "params": [
              {
                "name": "id",
                "value": "",
                "type": "path",
                "description": "ID of the policy."
              }
            ]
          },
          "docs": "Removes members from the member list of a specific policy. Silently ignores\nmembers that are not already part of the member list.\nYou may use this endpoint to update members of either Custom or Chef-managed policies.\n\nEnsure each element of the members array is in the correct\n[Member Expression](https://automate.chef.io/docs/iam-v2-guide/#member-expressions) format.\n\nThe removed members will still exist within Chef Automate, but are no longer associated with this policy.\n\nAuthorization Action:\n`"
        },
        {
          "info": {
            "name": "Gets IAM version",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/apis/iam/v2/policy_version"
          },
          "docs": "Returns the major and minor version of IAM that your automate installation is running.\n\nAuthorization Action:\n```\niam:policies:get\n```"
        }
      ]
    }
  ],
  "bundled": true
}