{
  "$id": "schema.json",
  "type": "object",
  "schema": "http://json-schema.org/draft-07/schema#",
  "translate": true,
  "dynamicfields": true,
  "properties": {
    "ph_request_type": {
      "type": "string",
      "description": "type of request (internal to adapter)",
      "default": "listRoles",
      "enum": [
        "listRoles",
        "createRole",
        "showRoleDetails",
        "updateRole",
        "deleteRole",
        "listRoleAssignmentsForGroupOnDomain",
        "assignRoleToGroupOnDomain",
        "checkWhetherGroupHasRoleAssignmentOnDomain",
        "unassignRoleFromGroupOnDomain",
        "listRoleAssignmentsForUserOnDomain",
        "assignRoleToUserOnDomain",
        "checkWhetherUserHasRoleAssignmentOnDomain",
        "unassignsRoleFromUserOnDomain",
        "listRoleAssignmentsForGroupOnProject",
        "assignRoleToGroupOnProject",
        "checkWhetherGroupHasRoleAssignmentOnProject",
        "unassignRoleFromGroupOnProject",
        "listRoleAssignmentsForUserOnProject",
        "assignRoleToUserOnProject",
        "checkWhetherUserHasRoleAssignmentOnProject",
        "unassignRoleFromUserOnProject",
        "listImpliedInferenceRolesForRole",
        "createRoleInferenceRule",
        "getRoleInferenceRule",
        "confirmRoleInferenceRule",
        "deleteRoleInferenceRule",
        "listAllRoleInferenceRules"
      ],
      "external_name": "ph_request_type"
    },
    "domainId": {
      "type": "string",
      "description": "The domain ID.",
      "parse": false,
      "encode": false,
      "encrypt": {
        "type": "AES",
        "key": ""
      },
      "external_name": "domain_id"
    },
    "roleId": {
      "type": "string",
      "description": "The role ID.",
      "parse": false,
      "encode": false,
      "encrypt": {
        "type": "AES",
        "key": ""
      },
      "external_name": "role_id"
    },
    "groupId": {
      "type": "string",
      "description": "The group ID.",
      "parse": false,
      "encode": false,
      "encrypt": {
        "type": "AES",
        "key": ""
      },
      "external_name": "group_id"
    },
    "userId": {
      "type": "string",
      "description": "The user ID.",
      "parse": false,
      "encode": false,
      "encrypt": {
        "type": "AES",
        "key": ""
      },
      "external_name": "user_id"
    },
    "projectId": {
      "type": "string",
      "description": "The project ID.",
      "parse": false,
      "encode": false,
      "encrypt": {
        "type": "AES",
        "key": ""
      },
      "external_name": "project_id"
    },
    "priorRoleId": {
      "type": "string",
      "description": "Role ID for a prior role.",
      "parse": false,
      "encode": false,
      "encrypt": {
        "type": "AES",
        "key": ""
      },
      "external_name": "prior_role_id"
    },
    "impliesRoleId": {
      "type": "string",
      "description": "Role ID for an implied role.",
      "parse": false,
      "encode": false,
      "encrypt": {
        "type": "AES",
        "key": ""
      },
      "external_name": "implies_role_id"
    }
  },
  "definitions": {}
}