{
  "opencollection": "1.0.0",
  "info": {
    "name": "Permit.io Access Requests (EAP) Access Requests (EAP) Resource Roles API",
    "version": "2.0.0"
  },
  "items": [
    {
      "info": {
        "name": "Resource Roles",
        "type": "folder"
      },
      "items": [
        {
          "info": {
            "name": "List Resource Roles",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/v2/schema/:proj_id/:env_id/resources/:resource_id/roles",
            "params": [
              {
                "name": "resource_id",
                "value": "my_resource",
                "type": "path",
                "description": "Either the unique id of the resource, or the URL-friendly key of the resource (i.e: the \"slug\")."
              },
              {
                "name": "proj_id",
                "value": "my_project",
                "type": "path",
                "description": "Either the unique id of the project, or the URL-friendly key of the project (i.e: the \"slug\")."
              },
              {
                "name": "env_id",
                "value": "my_environment",
                "type": "path",
                "description": "Either the unique id of the environment, or the URL-friendly key of the environment (i.e: the \"slug\")."
              },
              {
                "name": "page",
                "value": "",
                "type": "query",
                "description": "Page number of the results to fetch, starting at 1."
              },
              {
                "name": "per_page",
                "value": "",
                "type": "query",
                "description": "The number of results per page (max 100)."
              }
            ],
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Lists all the roles defined on the resource."
        },
        {
          "info": {
            "name": "Create Resource Role",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "{{baseUrl}}/v2/schema/:proj_id/:env_id/resources/:resource_id/roles",
            "params": [
              {
                "name": "resource_id",
                "value": "my_resource",
                "type": "path",
                "description": "Either the unique id of the resource, or the URL-friendly key of the resource (i.e: the \"slug\")."
              },
              {
                "name": "proj_id",
                "value": "my_project",
                "type": "path",
                "description": "Either the unique id of the project, or the URL-friendly key of the project (i.e: the \"slug\")."
              },
              {
                "name": "env_id",
                "value": "my_environment",
                "type": "path",
                "description": "Either the unique id of the environment, or the URL-friendly key of the environment (i.e: the \"slug\")."
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            },
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Creates a new role associated with the resource."
        },
        {
          "info": {
            "name": "Get Resource Role",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/v2/schema/:proj_id/:env_id/resources/:resource_id/roles/:role_id",
            "params": [
              {
                "name": "resource_id",
                "value": "my_resource",
                "type": "path",
                "description": "Either the unique id of the resource, or the URL-friendly key of the resource (i.e: the \"slug\")."
              },
              {
                "name": "role_id",
                "value": "",
                "type": "path",
                "description": "Either the unique id of the role, or the URL-friendly key of the role (i.e: the \"slug\")."
              },
              {
                "name": "proj_id",
                "value": "my_project",
                "type": "path",
                "description": "Either the unique id of the project, or the URL-friendly key of the project (i.e: the \"slug\")."
              },
              {
                "name": "env_id",
                "value": "my_environment",
                "type": "path",
                "description": "Either the unique id of the environment, or the URL-friendly key of the environment (i.e: the \"slug\")."
              }
            ],
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Gets a single role defined on the resource, if such role exists."
        },
        {
          "info": {
            "name": "Update Resource Role",
            "type": "http"
          },
          "http": {
            "method": "PATCH",
            "url": "{{baseUrl}}/v2/schema/:proj_id/:env_id/resources/:resource_id/roles/:role_id",
            "params": [
              {
                "name": "resource_id",
                "value": "my_resource",
                "type": "path",
                "description": "Either the unique id of the resource, or the URL-friendly key of the resource (i.e: the \"slug\")."
              },
              {
                "name": "role_id",
                "value": "",
                "type": "path",
                "description": "Either the unique id of the role, or the URL-friendly key of the role (i.e: the \"slug\")."
              },
              {
                "name": "proj_id",
                "value": "my_project",
                "type": "path",
                "description": "Either the unique id of the project, or the URL-friendly key of the project (i.e: the \"slug\")."
              },
              {
                "name": "env_id",
                "value": "my_environment",
                "type": "path",
                "description": "Either the unique id of the environment, or the URL-friendly key of the environment (i.e: the \"slug\")."
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            },
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Partially updates the role defined on a resource.\nFields that will be provided will be completely overwritten."
        },
        {
          "info": {
            "name": "Delete Resource Role",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "{{baseUrl}}/v2/schema/:proj_id/:env_id/resources/:resource_id/roles/:role_id",
            "params": [
              {
                "name": "resource_id",
                "value": "my_resource",
                "type": "path",
                "description": "Either the unique id of the resource, or the URL-friendly key of the resource (i.e: the \"slug\")."
              },
              {
                "name": "role_id",
                "value": "",
                "type": "path",
                "description": "Either the unique id of the role, or the URL-friendly key of the role (i.e: the \"slug\")."
              },
              {
                "name": "proj_id",
                "value": "my_project",
                "type": "path",
                "description": "Either the unique id of the project, or the URL-friendly key of the project (i.e: the \"slug\")."
              },
              {
                "name": "env_id",
                "value": "my_environment",
                "type": "path",
                "description": "Either the unique id of the environment, or the URL-friendly key of the environment (i.e: the \"slug\")."
              }
            ],
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Deletes the role and all its related data.\nThis includes any permissions granted to said role."
        },
        {
          "info": {
            "name": "Assign Permissions to Role",
            "type": "http"
          },
          "http": {
            "method": "POST",
            "url": "{{baseUrl}}/v2/schema/:proj_id/:env_id/resources/:resource_id/roles/:role_id/permissions",
            "params": [
              {
                "name": "resource_id",
                "value": "my_resource",
                "type": "path",
                "description": "Either the unique id of the resource, or the URL-friendly key of the resource (i.e: the \"slug\")."
              },
              {
                "name": "role_id",
                "value": "",
                "type": "path",
                "description": "Either the unique id of the role, or the URL-friendly key of the role (i.e: the \"slug\")."
              },
              {
                "name": "proj_id",
                "value": "my_project",
                "type": "path",
                "description": "Either the unique id of the project, or the URL-friendly key of the project (i.e: the \"slug\")."
              },
              {
                "name": "env_id",
                "value": "my_environment",
                "type": "path",
                "description": "Either the unique id of the environment, or the URL-friendly key of the environment (i.e: the \"slug\")."
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            },
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Assign permissions to role.\n\nIf some of the permissions specified are already assigned, will skip them."
        },
        {
          "info": {
            "name": "Remove Permissions from Role",
            "type": "http"
          },
          "http": {
            "method": "DELETE",
            "url": "{{baseUrl}}/v2/schema/:proj_id/:env_id/resources/:resource_id/roles/:role_id/permissions",
            "params": [
              {
                "name": "resource_id",
                "value": "my_resource",
                "type": "path",
                "description": "Either the unique id of the resource, or the URL-friendly key of the resource (i.e: the \"slug\")."
              },
              {
                "name": "role_id",
                "value": "",
                "type": "path",
                "description": "Either the unique id of the role, or the URL-friendly key of the role (i.e: the \"slug\")."
              },
              {
                "name": "proj_id",
                "value": "my_project",
                "type": "path",
                "description": "Either the unique id of the project, or the URL-friendly key of the project (i.e: the \"slug\")."
              },
              {
                "name": "env_id",
                "value": "my_environment",
                "type": "path",
                "description": "Either the unique id of the environment, or the URL-friendly key of the environment (i.e: the \"slug\")."
              }
            ],
            "body": {
              "type": "json",
              "data": "{}"
            },
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Remove permissions from role.\n\nIf some of the permissions specified are already unassigned, will skip them."
        },
        {
          "info": {
            "name": "Get Resource Role Ancestors",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/v2/schema/:proj_id/:env_id/resources/:resource_id/roles/:role_id/ancestors",
            "params": [
              {
                "name": "resource_id",
                "value": "my_resource",
                "type": "path",
                "description": "Either the unique id of the resource, or the URL-friendly key of the resource (i.e: the \"slug\")."
              },
              {
                "name": "role_id",
                "value": "",
                "type": "path",
                "description": "Either the unique id of the role, or the URL-friendly key of the role (i.e: the \"slug\")."
              },
              {
                "name": "proj_id",
                "value": "my_project",
                "type": "path",
                "description": "Either the unique id of the project, or the URL-friendly key of the project (i.e: the \"slug\")."
              },
              {
                "name": "env_id",
                "value": "my_environment",
                "type": "path",
                "description": "Either the unique id of the environment, or the URL-friendly key of the environment (i.e: the \"slug\")."
              }
            ],
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Get Resource Role Ancestors"
        },
        {
          "info": {
            "name": "Get Resource Role Descendants",
            "type": "http"
          },
          "http": {
            "method": "GET",
            "url": "{{baseUrl}}/v2/schema/:proj_id/:env_id/resources/:resource_id/roles/:role_id/descendants",
            "params": [
              {
                "name": "resource_id",
                "value": "my_resource",
                "type": "path",
                "description": "Either the unique id of the resource, or the URL-friendly key of the resource (i.e: the \"slug\")."
              },
              {
                "name": "role_id",
                "value": "",
                "type": "path",
                "description": "Either the unique id of the role, or the URL-friendly key of the role (i.e: the \"slug\")."
              },
              {
                "name": "proj_id",
                "value": "my_project",
                "type": "path",
                "description": "Either the unique id of the project, or the URL-friendly key of the project (i.e: the \"slug\")."
              },
              {
                "name": "env_id",
                "value": "my_environment",
                "type": "path",
                "description": "Either the unique id of the environment, or the URL-friendly key of the environment (i.e: the \"slug\")."
              }
            ],
            "auth": {
              "type": "bearer",
              "token": "{{bearerToken}}"
            }
          },
          "docs": "Get Resource Role Descendants"
        }
      ]
    }
  ],
  "bundled": true
}