microsoft.graph.rbacApplication

AuthenticationAuthorizationIdentityOAuthOpenID ConnectSSOIdentity Federation

Properties

Name Type Description
id string The unique identifier for an entity. Read-only.
resourceNamespaces array
roleAssignments array Resource to grant access to users or groups.
roleAssignmentScheduleInstances array Instances for active role assignments.
roleAssignmentScheduleRequests array Requests for active role assignments to principals through PIM.
roleAssignmentSchedules array Schedules for active role assignment operations.
roleDefinitions array Resource representing the roles allowed by RBAC providers and the permissions assigned to the roles.
roleEligibilityScheduleInstances array Instances for role eligibility requests.
roleEligibilityScheduleRequests array Requests for role eligibilities for principals through PIM.
roleEligibilitySchedules array Schedules for role eligibility operations.
View JSON Schema on GitHub

JSON Schema

azure-ad-microsoft-graph-rbac-application-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://artifacts.apis.io/azure-ad/json-schema/azure-ad-microsoft-graph-rbac-application-schema.json",
  "title": "microsoft.graph.rbacApplication",
  "x-generated": "2026-11-05",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/azure-ad-rolemanagement-rbacapplication-api-openapi.yml#/components/schemas/microsoft.graph.rbacApplication",
  "allOf": [
    {
      "$ref": "#/$defs/microsoft.graph.entity"
    },
    {
      "title": "rbacApplication",
      "type": "object",
      "properties": {
        "resourceNamespaces": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/microsoft.graph.unifiedRbacResourceNamespace"
          },
          "x-ms-navigationProperty": true
        },
        "roleAssignments": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/microsoft.graph.unifiedRoleAssignment"
          },
          "description": "Resource to grant access to users or groups.",
          "x-ms-navigationProperty": true
        },
        "roleAssignmentScheduleInstances": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/microsoft.graph.unifiedRoleAssignmentScheduleInstance"
          },
          "description": "Instances for active role assignments.",
          "x-ms-navigationProperty": true
        },
        "roleAssignmentScheduleRequests": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/microsoft.graph.unifiedRoleAssignmentScheduleRequest"
          },
          "description": "Requests for active role assignments to principals through PIM.",
          "x-ms-navigationProperty": true
        },
        "roleAssignmentSchedules": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/microsoft.graph.unifiedRoleAssignmentSchedule"
          },
          "description": "Schedules for active role assignment operations.",
          "x-ms-navigationProperty": true
        },
        "roleDefinitions": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/microsoft.graph.unifiedRoleDefinition"
          },
          "description": "Resource representing the roles allowed by RBAC providers and the permissions assigned to the roles.",
          "x-ms-navigationProperty": true
        },
        "roleEligibilityScheduleInstances": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/microsoft.graph.unifiedRoleEligibilityScheduleInstance"
          },
          "description": "Instances for role eligibility requests.",
          "x-ms-navigationProperty": true
        },
        "roleEligibilityScheduleRequests": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/microsoft.graph.unifiedRoleEligibilityScheduleRequest"
          },
          "description": "Requests for role eligibilities for principals through PIM.",
          "x-ms-navigationProperty": true
        },
        "roleEligibilitySchedules": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/microsoft.graph.unifiedRoleEligibilitySchedule"
          },
          "description": "Schedules for role eligibility operations.",
          "x-ms-navigationProperty": true
        }
      },
      "additionalProperties": {
        "type": "object"
      }
    }
  ],
  "$defs": {
    "microsoft.graph.appScope": {
      "allOf": [
        {
          "$ref": "#/$defs/microsoft.graph.entity"
        },
        {
          "title": "appScope",
          "type": "object",
          "properties": {
            "displayName": {
              "type": [
                "string",
                "null"
              ],
              "description": "Provides the display name of the app-specific resource represented by the app scope. Read-only."
            },
            "type": {
              "type": [
                "string",
                "null"
              ],
              "description": "Describes the type of app-specific resource represented by the app scope. Read-only."
            }
          },
          "additionalProperties": {
            "type": "object"
          }
        }
      ]
    },
    "microsoft.graph.dayOfWeek": {
      "title": "dayOfWeek",
      "enum": [
        "sunday",
        "monday",
        "tuesday",
        "wednesday",
        "thursday",
        "friday",
        "saturday"
      ],
      "type": "string"
    },
    "microsoft.graph.directoryObject": {
      "allOf": [
        {
          "$ref": "#/$defs/microsoft.graph.entity"
        },
        {
          "title": "directoryObject",
          "type": "object",
          "properties": {
            "deletedDateTime": {
              "pattern": "^[0-9]{4,}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]([.][0-9]{1,12})?(Z|[+-][0-9][0-9]:[0-9][0-9])$",
              "type": [
                "string",
                "null"
              ],
              "description": "Date and time when this object was deleted. Always null when the object hasn't been deleted.",
              "format": "date-time"
            }
          },
          "additionalProperties": {
            "type": "object"
          }
        }
      ]
    },
    "microsoft.graph.entity": {
      "title": "entity",
      "type": "object",
      "properties": {
        "id": {
          "type": "string",
          "description": "The unique identifier for an entity. Read-only."
        }
      },
      "additionalProperties": {
        "type": "object"
      }
    },
    "microsoft.graph.expirationPattern": {
      "title": "expirationPattern",
      "type": "object",
      "properties": {
        "duration": {
          "pattern": "^-?P([0-9]+D)?(T([0-9]+H)?([0-9]+M)?([0-9]+([.][0-9]+)?S)?)?$",
          "type": [
            "string",
            "null"
          ],
          "description": "The requestor's desired duration of access represented in ISO 8601 format for durations. For example, PT3H refers to three hours.  If specified in a request, endDateTime should not be present and the type property should be set to afterDuration.",
          "format": "duration"
        },
        "endDateTime": {
          "pattern": "^[0-9]{4,}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]([.][0-9]{1,12})?(Z|[+-][0-9][0-9]:[0-9][0-9])$",
          "type": [
            "string",
            "null"
          ],
          "description": "Timestamp of date and time information using ISO 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 is 2014-01-01T00:00:00Z.",
          "format": "date-time"
        },
        "type": {
          "$ref": "#/$defs/microsoft.graph.expirationPatternType"
        }
      },
      "additionalProperties": {
        "type": "object"
      }
    },
    "microsoft.graph.expirationPatternType": {
      "title": "expirationPatternType",
      "enum": [
        "notSpecified",
        "noExpiration",
        "afterDateTime",
        "afterDuration"
      ],
      "type": "string"
    },
    "microsoft.graph.identity": {
      "title": "identity",
      "type": "object",
      "properties": {
        "displayName": {
          "type": [
            "string",
            "null"
          ],
          "description": "The display name of the identity.For drive items, the display name might not always be available or up to date. For example, if a user changes their display name the API might show the new value in a future response, but the items associated with the user don't show up as changed when using delta."
        },
        "id": {
          "type": [
            "string",
            "null"
          ],
          "description": "Unique identifier for the identity or actor. For example, in the access reviews decisions API, this property might record the id of the principal, that is, the group, user, or application that's subject to review."
        }
      },
      "additionalProperties": {
        "type": "object"
      }
    },
    "microsoft.graph.identitySet": {
      "title": "identitySet",
      "type": "object",
      "properties": {
        "application": {
          "$ref": "#/$defs/microsoft.graph.identity"
        },
        "device": {
          "$ref": "#/$defs/microsoft.graph.identity"
        },
        "user": {
          "$ref": "#/$defs/microsoft.graph.identity"
        }
      },
      "additionalProperties": {
        "type": "object"
      }
    },
    "microsoft.graph.patternedRecurrence": {
      "title": "patternedRecurrence",
      "type": "object",
      "properties": {
        "pattern": {
          "$ref": "#/$defs/microsoft.graph.recurrencePattern"
        },
        "range": {
          "$ref": "#/$defs/microsoft.graph.recurrenceRange"
        }
      },
      "additionalProperties": {
        "type": "object"
      }
    },
    "microsoft.graph.recurrencePattern": {
      "title": "recurrencePattern",
      "type": "object",
      "properties": {
        "dayOfMonth": {
          "maximum": 2147483647,
          "minimum": -2147483648,
          "type": "number",
          "description": "The day of the month on which the event occurs. Required if type is absoluteMonthly or absoluteYearly.",
          "format": "int32"
        },
        "daysOfWeek": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/microsoft.graph.dayOfWeek"
          },
          "description": "A collection of the days of the week on which the event occurs. The possible values are: sunday, monday, tuesday, wednesday, thursday, friday, saturday. If type is relativeMonthly or relativeYearly, and daysOfWeek specifies more than one day, the event falls on the first day that satisfies the pattern.  Required if type is weekly, relativeMonthly, or relativeYearly."
        },
        "firstDayOfWeek": {
          "$ref": "#/$defs/microsoft.graph.dayOfWeek"
        },
        "index": {
          "$ref": "#/$defs/microsoft.graph.weekIndex"
        },
        "interval": {
          "maximum": 2147483647,
          "minimum": -2147483648,
          "type": "number",
          "description": "The number of units between occurrences, where units can be in days, weeks, months, or years, depending on the type. Required.",
          "format": "int32"
        },
        "month": {
          "maximum": 2147483647,
          "minimum": -2147483648,
          "type": "number",
          "description": "The month in which the event occurs.  This is a number from 1 to 12.",
          "format": "int32"
        },
        "type": {
          "$ref": "#/$defs/microsoft.graph.recurrencePatternType"
        }
      },
      "additionalProperties": {
        "type": "object"
      }
    },
    "microsoft.graph.recurrencePatternType": {
      "title": "recurrencePatternType",
      "enum": [
        "daily",
        "weekly",
        "absoluteMonthly",
        "relativeMonthly",
        "absoluteYearly",
        "relativeYearly"
      ],
      "type": "string"
    },
    "microsoft.graph.recurrenceRange": {
      "title": "recurrenceRange",
      "type": "object",
      "properties": {
        "endDate": {
          "pattern": "^[0-9]{4,}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])$",
          "type": [
            "string",
            "null"
          ],
          "description": "The date to stop applying the recurrence pattern. Depending on the recurrence pattern of the event, the last occurrence of the meeting may not be this date. Required if type is endDate.",
          "format": "date"
        },
        "numberOfOccurrences": {
          "maximum": 2147483647,
          "minimum": -2147483648,
          "type": "number",
          "description": "The number of times to repeat the event. Required and must be positive if type is numbered.",
          "format": "int32"
        },
        "recurrenceTimeZone": {
          "type": [
            "string",
            "null"
          ],
          "description": "Time zone for the startDate and endDate properties. Optional. If not specified, the time zone of the event is used."
        },
        "startDate": {
          "pattern": "^[0-9]{4,}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])$",
          "type": [
            "string",
            "null"
          ],
          "description": "The date to start applying the recurrence pattern. The first occurrence of the meeting may be this date or later, depending on the recurrence pattern of the event. Must be the same value as the start property of the recurring event. Required.",
          "format": "date"
        },
        "type": {
          "$ref": "#/$defs/microsoft.graph.recurrenceRangeType"
        }
      },
      "additionalProperties": {
        "type": "object"
      }
    },
    "microsoft.graph.recurrenceRangeType": {
      "title": "recurrenceRangeType",
      "enum": [
        "endDate",
        "noEnd",
        "numbered"
      ],
      "type": "string"
    },
    "microsoft.graph.request": {
      "allOf": [
        {
          "$ref": "#/$defs/microsoft.graph.entity"
        },
        {
          "title": "request",
          "type": "object",
          "properties": {
            "approvalId": {
              "type": [
                "string",
                "null"
              ],
              "description": "The identifier of the approval of the request."
            },
            "completedDateTime": {
              "pattern": "^[0-9]{4,}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]([.][0-9]{1,12})?(Z|[+-][0-9][0-9]:[0-9][0-9])$",
              "type": [
                "string",
                "null"
              ],
              "description": "The request completion date time.",
              "format": "date-time"
            },
            "createdBy": {
              "$ref": "#/$defs/microsoft.graph.identitySet"
            },
            "createdDateTime": {
              "pattern": "^[0-9]{4,}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]([.][0-9]{1,12})?(Z|[+-][0-9][0-9]:[0-9][0-9])$",
              "type": [
                "string",
                "null"
              ],
              "description": "The request creation date time.",
              "format": "date-time"
            },
            "customData": {
              "type": [
                "string",
                "null"
              ],
              "description": "Free text field to define any custom data for the request. Not used."
            },
            "status": {
              "type": "string",
              "description": "The status of the request. Not nullable. The possible values are: Canceled, Denied, Failed, Granted, PendingAdminDecision, PendingApproval, PendingProvisioning, PendingScheduleCreation, Provisioned, Revoked, and ScheduleCreated. Not nullable."
            }
          },
          "additionalProperties": {
            "type": "object"
          }
        }
      ]
    },
    "microsoft.graph.requestSchedule": {
      "title": "requestSchedule",
      "type": "object",
      "properties": {
        "expiration": {
          "$ref": "#/$defs/microsoft.graph.expirationPattern"
        },
        "recurrence": {
          "$ref": "#/$defs/microsoft.graph.patternedRecurrence"
        },
        "startDateTime": {
          "pattern": "^[0-9]{4,}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]([.][0-9]{1,12})?(Z|[+-][0-9][0-9]:[0-9][0-9])$",
          "type": [
            "string",
            "null"
          ],
          "description": "When the  eligible or active assignment becomes active.",
          "format": "date-time"
        }
      },
      "additionalProperties": {
        "type": "object"
      }
    },
    "microsoft.graph.ticketInfo": {
      "title": "ticketInfo",
      "type": "object",
      "properties": {
        "ticketNumber": {
          "type": [
            "string",
            "null"
          ],
          "description": "The ticket number."
        },
        "ticketSystem": {
          "type": [
            "string",
            "null"
          ],
          "description": "The description of the ticket system."
        }
      },
      "additionalProperties": {
        "type": "object"
      }
    },
    "microsoft.graph.unifiedRbacResourceAction": {
      "allOf": [
        {
          "$ref": "#/$defs/microsoft.graph.entity"
        },
        {
          "title": "unifiedRbacResourceAction",
          "type": "object",
          "properties": {
            "actionVerb": {
              "type": [
                "string",
                "null"
              ]
            },
            "authenticationContextId": {
              "type": [
                "string",
                "null"
              ]
            },
            "description": {
              "type": [
                "string",
                "null"
              ]
            },
            "isAuthenticationContextSettable": {
              "type": [
                "boolean",
                "null"
              ]
            },
            "name": {
              "type": "string"
            },
            "resourceScopeId": {
              "type": [
                "string",
                "null"
              ]
            }
          },
          "additionalProperties": {
            "type": "object"
          }
        }
      ]
    },
    "microsoft.graph.unifiedRbacResourceNamespace": {
      "allOf": [
        {
          "$ref": "#/$defs/microsoft.graph.entity"
        },
        {
          "title": "unifiedRbacResourceNamespace",
          "type": "object",
          "properties": {
            "name": {
              "type": "string"
            },
            "resourceActions": {
              "type": "array",
              "items": {
                "$ref": "#/$defs/microsoft.graph.unifiedRbacResourceAction"
              },
              "x-ms-navigationProperty": true
            }
          },
          "additionalProperties": {
            "type": "object"
          }
        }
      ]
    },
    "microsoft.graph.unifiedRoleAssignment": {
      "allOf": [
        {
          "$ref": "#/$defs/microsoft.graph.entity"
        },
        {
          "title": "unifiedRoleAssignment",
          "type": "object",
          "properties": {
            "appScopeId": {
              "type": [
                "string",
                "null"
              ],
              "description": "Identifier of the app specific scope when the assignment scope is app specific. The scope of an assignment determines the set of resources for which the principal has been granted access. App scopes are scopes that are defined and understood by a resource application only. For the entitlement management provider, use this property to specify a catalog. For example, /AccessPackageCatalog/beedadfe-01d5-4025-910b-84abb9369997. Supports $filter (eq, in). For example, /roleManagement/entitlementManagement/roleAssignments?$filter=appScopeId eq '/AccessPackageCatalog/{catalog id}'."
            },
            "condition": {
              "type": [
                "string",
                "null"
              ]
            },
            "directoryScopeId": {
              "type": [
                "string",
                "null"
              ],
              "description": "Identifier of the directory object representing the scope of the assignment. The scope of an assignment determines the set of resources for which the principal has been granted access. Directory scopes are shared scopes stored in the directory that are understood by multiple applications, unlike app scopes that are defined and understood by a resource application only. Supports $filter (eq, in)."
            },
            "principalId": {
              "type": [
                "string",
                "null"
              ],
              "description": "Identifier of the principal to which the assignment is granted. Supported principals are users, role-assignable groups, and service principals. Supports $filter (eq, in)."
            },
            "principalOrganizationId": {
              "type": [
                "string",
                "null"
              ]
            },
            "roleDefinitionId": {
              "type": [
                "string",
                "null"
              ],
              "description": "Identifier of the unifiedRoleDefinition the assignment is for. Read-only. Supports $filter (eq, in)."
            },
            "appScope": {
              "$ref": "#/$defs/microsoft.graph.appScope"
            },
            "directoryScope": {
              "$ref": "#/$defs/microsoft.graph.directoryObject"
            },
            "principal": {
              "$ref": "#/$defs/microsoft.graph.directoryObject"
            },
            "roleDefinition": {
              "$ref": "#/$defs/microsoft.graph.unifiedRoleDefinition"
            }
          },
          "additionalProperties": {
            "type": "object"
          }
        }
      ]
    },
    "microsoft.graph.unifiedRoleAssignmentSchedule": {
      "allOf": [
        {
          "$ref": "#/$defs/microsoft.graph.unifiedRoleScheduleBase"
        },
        {
          "title": "unifiedRoleAssignmentSchedule",
          "type": "object",
          "properties": {
            "assignmentType": {
              "type": [
                "string",
                "null"
              ],
              "description": "The type of the assignment that can either be Assigned or Activated. Supports $filter (eq, ne)."
            },
            "memberType": {
              "type": [
                "string",
                "null"
              ],
              "description": "How the assignment is inherited. It can either be Inherited, Direct, or Group. It can further imply whether the unifiedRoleAssignmentSchedule can be managed by the caller. Supports $filter (eq, ne)."
            },
            "scheduleInfo": {
              "$ref": "#/$defs/microsoft.graph.requestSchedule"
            },
            "activatedUsing": {
              "$ref": "#/$defs/microsoft.graph.unifiedRoleEligibilitySchedule"
            }
          },
          "additionalProperties": {
            "type": "object"
          }
        }
      ]
    },
    "microsoft.graph.unifiedRoleAssignmentScheduleInstance": {
      "allOf": [
        {
          "$ref": "#/$defs/microsoft.graph.unifiedRoleScheduleInstanceBase"
        },
        {
          "title": "unifiedRoleAssignmentScheduleInstance",
          "type": "object",
          "properties": {
            "assignmentType": {
              "type": [
                "string",
                "null"
              ],
              "description": "The type of the assignment that can either be Assigned or Activated. Supports $filter (eq, ne)."
            },
            "endDateTime": {
              "pattern": "^[0-9]{4,}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]([.][0-9]{1,12})?(Z|[+-][0-9][0-9]:[0-9][0-9])$",
              "type": [
                "string",
                "null"
              ],
              "description": "The end date of the schedule instance.",
              "format": "date-time"
            },
            "memberType": {
              "type": [
                "string",
                "null"
              ],
              "description": "How the assignment is inherited. It can either be Inherited, Direct, or Group. It can further imply whether the unifiedRoleAssignmentSchedule can be managed by the caller. Supports $filter (eq, ne)."
            },
            "roleAssignmentOriginId": {
              "type": [
                "string",
                "null"
              ],
              "description": "The identifier of the role assignment in Microsoft Entra. Supports $filter (eq, ne)."
            },
            "roleAssignmentScheduleId": {
              "type": [
                "string",
                "null"
              ],
              "description": "The identifier of the unifiedRoleAssignmentSchedule object from which this instance was created. Supports $filter (eq, ne)."
            },
            "startDateTime": {
              "pattern": "^[0-9]{4,}-(0[1-9]|1[012])-(0[1-9]|[12][0-9]|3[01])T([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9]([.][0-9]{1,12})?(Z|[+-][0-9][0-9]:[0-9][0-9])$",
              "type": [
                "string",
                "null"
              ],
              "description": "When this instance starts.",
              "format": "date-time"
            },
            "activatedUsing": {
              "$ref": "#/$defs/microsoft.graph.unifiedRoleEligibilityScheduleInstance"
            }
          },
          "additionalProperties": {
            "type": "object"
          }
        }
      ]
    },
    "microsoft.graph.unifiedRoleAssignmentScheduleRequest": {
      "allOf": [
        {
          "$ref": "#/$defs/microsoft.graph.request"
        },
        {
          "title": "unifiedRoleAssignmentScheduleRequest",
          "type": "object",
          "properties": {
            "action": {
              "$ref": "#/$defs/microsoft.graph.unifiedRoleScheduleRequestActions"
            },
            "appScopeId": {
              "type": [
                "string",
                "null"
              ],
              "description": "Identifier of the app-specific scope when the assignment is scoped to an app. The scope of an assignment determines the set of resources for which the principal has been granted access. App scopes are scopes that are defined and understood by this application only. Use / for tenant-wide app scopes. Use directoryScopeId to limit the scope to particular directory objects, for example, administrative units. Supports $filter (eq, ne, and on null values)."
            },
            "directoryScopeId": {
              "type": [
                "string",
                "null"
              ],
              "description": "Identifier of the directory object representing the scope of the assignment. The scope of an assignment determines the set of resources for which the principal has been granted access. Directory scopes are shared scopes stored in the directory that are understood by multiple applications. Use / for tenant-wide scope. Use appScopeId to limit the scope to an application only. Supports $filter (eq, ne, and on null values)."
            },
            "isValidationOnly": {
              "type": [
                "boolean",
                "null"
              ],
              "description": "Determines whether the call is a validation or an actual call. Only set this property if you want to check whether an activation is subject to additional rules like MFA before actually submitting the request."
            },
            "justification": {
              "type": [
                "string",
                "null"
              ],
              "description": "A message provided by users and administrators when create they create the unifiedRoleAssignmentScheduleRequest object."
            },
            "principalId": {
              "type": [
                "string",
                "null"
              ],
              "description": "Identifier of the principal that has been granted the assignment. Can be a user, role-assignable group, or a service principal. Supports $filter (eq, ne)."
            },
            "roleDefinitionId": {
              "type": [
                "string",
                "null"
              ],
              "description": "Identifier of the unifiedRoleDefinition object that is being assigned to the principal. Supports $filter (eq, ne)."
            },
            "scheduleInfo": {
              "$ref": "#/$defs/microsoft.graph.requestSchedule"
            },
            "targetScheduleId": {
              "type": [
                "string",
                "null"
              ],
              "description": "Identifier of the schedule object that's linked to the assignment request. Supports $filter (eq, ne)."
            },
            "ticketInfo": {
              "$ref": "#/$defs/microsoft.graph.ticketInfo"
            },
            "activatedUsing": {
              "$ref": "#/$defs/microsoft.graph.unifiedRoleEligibilitySchedule"
            },
            "appScope": {
              "$ref": "#/$defs/microsoft.graph.appScope"
            },
            "directoryScope": {
              "$ref": "#/$defs/microsoft.graph.directoryObject"
            },
            "principal": {
              "$ref": "#/$defs/microsoft.graph.directoryObject"
            },
            "roleDefinition": {
              "$ref": "#/$defs/microsoft.graph.unifiedRoleDefinition"
            },
            "targetSchedule": {
              "$ref": "#/$defs/microsoft.graph.unifiedRoleAssignmentSchedule"
            }
          },
          "additionalProperties": {
            "type": "object"
          }
        }
      ]
    },
    "microsoft.graph.unifiedRoleDefinition": {
      "allOf": [
        {
          "$ref": "#/$defs/microsoft.graph.entity"
        },
        {
          "title": "unifiedRoleDefinition",
          "type": "object",
          "properties": {
            "description": {
              "type": [
                "string",
                "null"
              ],
              "description": "The description for the unifiedRoleDefinition. Read-only when isBuiltIn is true."
            },
            "displayName": {
              "type": [
                "string",
                "null"
              ],
              "description": "The display name for the unifiedRoleDefinition. Read-only when isBuiltIn is true. Required.  Supports $filter (eq, in)."
            },
            "isBuiltIn": {
              "type": [
                "boolean",
                "null"
              ],
              "description": "Flag indicating whether the role definition is part of the default set included in Microsoft Entra or a custom definition. Read-only. Supports $filter (eq, in)."
            },
            "isEnabled": {
              "type": [
                "boolean",
                "null"
              ],
              "description": "Flag indicating whether the role is enabled for assignment. If false the role is not available for assignment. Read-only when isBuiltIn is true."
            },
            "resourceScopes": {
              "type": "array",
              "items": {
                "type": "string"
              },
              "description": "List of the scopes or permissions the role definition applies to. Currently only / is supported. Read-only when isBuiltIn is true. DO NOT USE. This will be deprecated soon. Attach scope to role assignment."
            },
            "rolePermissions": {
              "type": "array",
              "items": {
                "$ref": "#/$defs/microsoft.graph.unifiedRolePermission"
              },
              "description": "List of permissions included in the role. Read-only when isBuiltIn is true. Required."
            },
            "templateId": {
              "type": [
                "string",
                "null"
              ],
              "description": "Custom template identifier that can be set when isBuiltIn is false but is read-only when isBuiltIn is true. This identifier is typically used if one needs an identifier to be the same across different directories."
            },
            "version": {
              "type": [
                "string",
                "null"
              ],
              "description": "Indicates version of the role definition. Read-only when isBuiltIn is true."
            },
            "inheritsPermissionsFrom": {
              "type": "array",
              "items": {
                "$ref": "#/$defs/microsoft.graph.unifiedRoleDefinition"
              },
              "description": "Read-only collection of role definitions that the given role definition inherits from. Only Microsoft Entra built-in roles (isBuiltIn is true) support this attribute. Supports $expand.",
              "x-ms-navigationProperty": true
            }
          },
          "additionalProperties": {
            "type": "object"
          }
        }
      ]
    },
    "microsoft.graph.unifiedRoleEligibilitySchedule": {
      "allOf": [
        {
          "$ref": "#/$defs/microsoft.graph.unifiedRoleScheduleBase"
        },
        {
          "title": "unifiedRoleEligibilitySchedule",
          "type": "object",
        

# --- truncated at 32 KB (46 KB total) ---
# Full source: https://artifacts.apis.io/azure-ad/json-schema/azure-ad-microsoft-graph-rbac-application-schema.json

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/azure-ad-microsoft-graph-rbac-application"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.