{ "$schema": "https://json-schema.org/draft/2020-12/schema", "title": "check_group_membership", "description": "Check if a specific user belongs to a particular group, filtered using attribute-based filter (to filter the user) and group-based filter (to filter the group)", "$id": "https://raw.githubusercontent.com/api-evangelist/palo-alto-networks/refs/heads/main/json-schema/cloud-identity-engine-api-check_group_membership-schema.json", "properties": { "name": { "type": "object", "description": "Attribute-based filter.", "required": [ "attrName", "attrValue", "match" ], "properties": { "attrName": { "description": "Attribute name", "type": "string", "enum": [ "User Principal Name", "Common-Name", "Name", "Distinguished Name", "SAM Account Name", "Unique Identifier" ], "example": "Distinguished Name" }, "attrValue": { "description": "Attribute value", "type": "string", "example": "CN=Jack,UID=Park,DC=example,DC=com" }, "match": { "description": "Value you want to match.", "type": "string", "enum": [ "equal", "textSearch" ], "example": "equal" } } } }, "required": [ "name" ], "allOf": [ { "description": "Retrieve specific attributes for users belonging to a particular group, filtered using the group-based filter.", "allOf": [ { "type": "object", "description": "Domain name for a specific directory.", "required": [ "domain" ], "properties": { "domain": { "type": "string", "description": "Domain name of the target directory.", "example": "paloaltonetworks.com" } } }, { "type": "object", "description": "Optional pagination parameters.", "properties": { "pageNum": { "type": "integer", "description": "Page number to retrieve (starting from page 1).", "example": 1 }, "pageSz": { "type": "integer", "description": "Number of records per page (max is 1000 per page).", "example": 500 } } } ], "required": [ "filter" ], "properties": { "filter": { "type": "object", "description": "Group-based filter.", "required": [ "type", "name", "level" ], "properties": { "type": { "type": "string", "enum": [ "group" ] }, "name": { "type": "object", "description": "Attribute-based filter.", "required": [ "attrName", "attrValue", "match" ], "properties": { "attrName": { "description": "Attribute name", "type": "string", "enum": [ "User Principal Name", "Common-Name", "Name", "Distinguished Name", "SAM Account Name", "Unique Identifier" ], "example": "Distinguished Name" }, "attrValue": { "description": "Attribute value", "type": "string", "example": "CN=Jack,UID=Park,DC=example,DC=com" }, "match": { "description": "Value you want to match.", "type": "string", "enum": [ "equal", "textSearch" ], "example": "equal" } } }, "level": { "type": "string", "enum": [ "immediate", "recursive" ] } } }, "attrs": { "type": "array", "description": "user attributes part of the response", "items": { "type": "string" }, "example": [ "Common-Name", "Mail", "Unique Identifier", "Manager", "User Principal Name", "Name", "Distinguished Name", "SAM Account Name" ] } }, "example": { "domain": "paloaltonetworks.com", "filter": { "type": "group", "name": { "attrName": "Common-Name", "attrValue": "Administrators", "match": "equal" }, "level": "recursive" }, "attrs": [ "Common-Name", "Mail", "Unique Identifier", "Manager", "User Principal Name", "Name", "Distinguished Name", "SAM Account Name" ] } } ], "type": "object" }