Package-level declarations

Types

Link copied to clipboard
data class AccessReviewHistoryInstanceResponse(val displayName: String? = null, val downloadUri: String, val expiration: String? = null, val fulfilledDateTime: String? = null, val id: String, val name: String, val reviewHistoryPeriodEndDateTime: String? = null, val reviewHistoryPeriodStartDateTime: String? = null, val runDateTime: String? = null, val status: String, val type: String)

Access Review History Definition Instance.

Link copied to clipboard
data class AccessReviewInstanceResponse(val backupReviewers: List<AccessReviewReviewerResponse>? = null, val endDateTime: String? = null, val id: String, val name: String, val reviewers: List<AccessReviewReviewerResponse>? = null, val reviewersType: String, val startDateTime: String? = null, val status: String, val type: String)

Access Review Instance.

Link copied to clipboard
data class AccessReviewReviewerResponse(val principalId: String? = null, val principalType: String)

Descriptor for what needs to be reviewed

Link copied to clipboard
data class AccessReviewScopeResponse(val assignmentState: String, val excludeResourceId: String? = null, val excludeRoleDefinitionId: String? = null, val expandNestedMemberships: Boolean? = null, val inactiveDuration: String? = null, val includeAccessBelowResource: Boolean? = null, val includeInheritedAccess: Boolean? = null, val principalType: String, val resourceId: String, val roleDefinitionId: String)

Descriptor for what needs to be reviewed

Link copied to clipboard
data class ApprovalSettingsResponse(val approvalMode: String? = null, val approvalStages: List<ApprovalStageResponse>? = null, val isApprovalRequired: Boolean? = null, val isApprovalRequiredForExtension: Boolean? = null, val isRequestorJustificationRequired: Boolean? = null)

The approval settings.

Link copied to clipboard
data class ApprovalStageResponse(val approvalStageTimeOutInDays: Int? = null, val escalationApprovers: List<UserSetResponse>? = null, val escalationTimeInMinutes: Int? = null, val isApproverJustificationRequired: Boolean? = null, val isEscalationEnabled: Boolean? = null, val primaryApprovers: List<UserSetResponse>? = null)

The approval stage.

Link copied to clipboard

Expanded info of resource, role and principal

Link copied to clipboard
data class ExpandedPropertiesResponsePrincipal(val displayName: String? = null, val email: String? = null, val id: String? = null, val type: String? = null)

Details of the principal

Link copied to clipboard
data class ExpandedPropertiesResponseRoleDefinition(val displayName: String? = null, val id: String? = null, val type: String? = null)

Details of role definition

Link copied to clipboard
data class ExpandedPropertiesResponseScope(val displayName: String? = null, val id: String? = null, val type: String? = null)

Details of the resource scope

data class GetAccessReviewHistoryDefinitionByIdResult(val createdDateTime: String, val decisions: List<String>? = null, val displayName: String? = null, val endDate: String? = null, val id: String, val instances: List<AccessReviewHistoryInstanceResponse>? = null, val interval: Int? = null, val name: String, val numberOfOccurrences: Int? = null, val principalId: String, val principalName: String, val principalType: String, val reviewHistoryPeriodEndDateTime: String, val reviewHistoryPeriodStartDateTime: String, val scopes: List<AccessReviewScopeResponse>? = null, val startDate: String? = null, val status: String, val type: String, val userPrincipalName: String)

Access Review History Definition.

data class GetAccessReviewScheduleDefinitionByIdResult(val assignmentState: String, val autoApplyDecisionsEnabled: Boolean? = null, val backupReviewers: List<AccessReviewReviewerResponse>? = null, val defaultDecision: String? = null, val defaultDecisionEnabled: Boolean? = null, val descriptionForAdmins: String? = null, val descriptionForReviewers: String? = null, val displayName: String? = null, val endDate: String? = null, val excludeResourceId: String? = null, val excludeRoleDefinitionId: String? = null, val expandNestedMemberships: Boolean? = null, val id: String, val inactiveDuration: String? = null, val includeAccessBelowResource: Boolean? = null, val includeInheritedAccess: Boolean? = null, val instanceDurationInDays: Int? = null, val instances: List<AccessReviewInstanceResponse>? = null, val interval: Int? = null, val justificationRequiredOnApproval: Boolean? = null, val mailNotificationsEnabled: Boolean? = null, val name: String, val numberOfOccurrences: Int? = null, val principalId: String, val principalName: String, val principalType: String, val recommendationLookBackDuration: String? = null, val recommendationsEnabled: Boolean? = null, val reminderNotificationsEnabled: Boolean? = null, val resourceId: String, val reviewers: List<AccessReviewReviewerResponse>? = null, val reviewersType: String, val roleDefinitionId: String, val startDate: String? = null, val status: String, val type: String, val userPrincipalName: String)

Access Review Schedule Definition.

Link copied to clipboard
data class GetClientConfigResult(val clientId: String, val objectId: String, val subscriptionId: String, val tenantId: String)

Configuration values returned by getClientConfig.

Link copied to clipboard
data class GetClientTokenResult(val token: String)

Configuration values returned by getClientToken.

data class GetManagementLockAtResourceGroupLevelResult(val id: String, val level: String, val name: String, val notes: String? = null, val owners: List<ManagementLockOwnerResponse>? = null, val systemData: SystemDataResponse, val type: String)

The lock information.

Link copied to clipboard
data class GetManagementLockAtResourceLevelResult(val id: String, val level: String, val name: String, val notes: String? = null, val owners: List<ManagementLockOwnerResponse>? = null, val systemData: SystemDataResponse, val type: String)

The lock information.

data class GetManagementLockAtSubscriptionLevelResult(val id: String, val level: String, val name: String, val notes: String? = null, val owners: List<ManagementLockOwnerResponse>? = null, val systemData: SystemDataResponse, val type: String)

The lock information.

Link copied to clipboard
data class GetManagementLockByScopeResult(val id: String, val level: String, val name: String, val notes: String? = null, val owners: List<ManagementLockOwnerResponse>? = null, val systemData: SystemDataResponse, val type: String)

The lock information.

Link copied to clipboard
data class GetPimRoleEligibilityScheduleResult(val approvalId: String, val condition: String? = null, val conditionVersion: String? = null, val createdOn: String, val expandedProperties: ExpandedPropertiesResponse, val id: String, val justification: String? = null, val name: String, val principalId: String, val principalType: String, val requestType: String, val requestorId: String, val roleDefinitionId: String, val scheduleInfo: RoleEligibilityScheduleRequestPropertiesResponseScheduleInfo? = null, val scope: String, val status: String, val targetRoleEligibilityScheduleId: String? = null, val targetRoleEligibilityScheduleInstanceId: String? = null, val ticketInfo: RoleEligibilityScheduleRequestPropertiesResponseTicketInfo? = null, val type: String)

Role Eligibility schedule request

Link copied to clipboard
data class GetPolicyAssignmentResult(val description: String? = null, val displayName: String? = null, val enforcementMode: String? = null, val id: String, val identity: IdentityResponse? = null, val location: String? = null, val metadata: Any? = null, val name: String, val nonComplianceMessages: List<NonComplianceMessageResponse>? = null, val notScopes: List<String>? = null, val overrides: List<OverrideResponse>? = null, val parameters: Map<String, ParameterValuesValueResponse>? = null, val policyDefinitionId: String? = null, val resourceSelectors: List<ResourceSelectorResponse>? = null, val scope: String, val systemData: SystemDataResponse, val type: String)

The policy assignment.

data class GetPolicyDefinitionAtManagementGroupResult(val description: String? = null, val displayName: String? = null, val id: String, val metadata: Any? = null, val mode: String? = null, val name: String, val parameters: Map<String, ParameterDefinitionsValueResponse>? = null, val policyRule: Any? = null, val policyType: String? = null, val systemData: SystemDataResponse, val type: String)

The policy definition.

Link copied to clipboard
data class GetPolicyDefinitionResult(val description: String? = null, val displayName: String? = null, val id: String, val metadata: Any? = null, val mode: String? = null, val name: String, val parameters: Map<String, ParameterDefinitionsValueResponse>? = null, val policyRule: Any? = null, val policyType: String? = null, val systemData: SystemDataResponse, val type: String)

The policy definition.

data class GetPolicyDefinitionVersionAtManagementGroupResult(val description: String? = null, val displayName: String? = null, val id: String, val metadata: Any? = null, val mode: String? = null, val name: String, val parameters: Map<String, ParameterDefinitionsValueResponse>? = null, val policyRule: Any? = null, val policyType: String? = null, val systemData: SystemDataResponse, val type: String, val version: String? = null)

The ID of the policy definition version.

Link copied to clipboard
data class GetPolicyDefinitionVersionResult(val description: String? = null, val displayName: String? = null, val id: String, val metadata: Any? = null, val mode: String? = null, val name: String, val parameters: Map<String, ParameterDefinitionsValueResponse>? = null, val policyRule: Any? = null, val policyType: String? = null, val systemData: SystemDataResponse, val type: String, val version: String? = null)

The ID of the policy definition version.

Link copied to clipboard
data class GetPolicyExemptionResult(val assignmentScopeValidation: String? = null, val description: String? = null, val displayName: String? = null, val exemptionCategory: String, val expiresOn: String? = null, val id: String, val metadata: Any? = null, val name: String, val policyAssignmentId: String, val policyDefinitionReferenceIds: List<String>? = null, val resourceSelectors: List<ResourceSelectorResponse>? = null, val systemData: SystemDataResponse, val type: String)

The policy exemption.

data class GetPolicySetDefinitionAtManagementGroupResult(val description: String? = null, val displayName: String? = null, val id: String, val metadata: Any? = null, val name: String, val parameters: Map<String, ParameterDefinitionsValueResponse>? = null, val policyDefinitionGroups: List<PolicyDefinitionGroupResponse>? = null, val policyDefinitions: List<PolicyDefinitionReferenceResponse>, val policyType: String? = null, val systemData: SystemDataResponse, val type: String)

The policy set definition.

Link copied to clipboard
data class GetPolicySetDefinitionResult(val description: String? = null, val displayName: String? = null, val id: String, val metadata: Any? = null, val name: String, val parameters: Map<String, ParameterDefinitionsValueResponse>? = null, val policyDefinitionGroups: List<PolicyDefinitionGroupResponse>? = null, val policyDefinitions: List<PolicyDefinitionReferenceResponse>, val policyType: String? = null, val systemData: SystemDataResponse, val type: String)

The policy set definition.

data class GetPolicySetDefinitionVersionAtManagementGroupResult(val description: String? = null, val displayName: String? = null, val id: String, val metadata: Any? = null, val name: String, val parameters: Map<String, ParameterDefinitionsValueResponse>? = null, val policyDefinitionGroups: List<PolicyDefinitionGroupResponse>? = null, val policyDefinitions: List<PolicyDefinitionReferenceResponse>, val policyType: String? = null, val systemData: SystemDataResponse, val type: String, val version: String? = null)

The policy set definition version.

Link copied to clipboard
data class GetPolicySetDefinitionVersionResult(val description: String? = null, val displayName: String? = null, val id: String, val metadata: Any? = null, val name: String, val parameters: Map<String, ParameterDefinitionsValueResponse>? = null, val policyDefinitionGroups: List<PolicyDefinitionGroupResponse>? = null, val policyDefinitions: List<PolicyDefinitionReferenceResponse>, val policyType: String? = null, val systemData: SystemDataResponse, val type: String, val version: String? = null)

The policy set definition version.

Link copied to clipboard
Link copied to clipboard
data class GetResourceManagementPrivateLinkResult(val id: String, val location: String? = null, val name: String, val properties: ResourceManagementPrivateLinkEndpointConnectionsResponse, val type: String)
Link copied to clipboard
data class GetRoleAssignmentResult(val condition: String? = null, val conditionVersion: String? = null, val createdBy: String, val createdOn: String, val delegatedManagedIdentityResourceId: String? = null, val description: String? = null, val id: String, val name: String, val principalId: String, val principalType: String? = null, val roleDefinitionId: String, val scope: String, val type: String, val updatedBy: String, val updatedOn: String)

Role Assignments

Link copied to clipboard
data class GetRoleDefinitionResult(val assignableScopes: List<String>? = null, val createdBy: String, val createdOn: String, val description: String? = null, val id: String, val name: String, val permissions: List<PermissionResponse>? = null, val roleName: String? = null, val roleType: String? = null, val type: String, val updatedBy: String, val updatedOn: String)

Role definition.

Link copied to clipboard
data class GetRoleManagementPolicyAssignmentResult(val effectiveRules: List<Any>, val id: String, val name: String, val policyAssignmentProperties: PolicyAssignmentPropertiesResponse, val policyId: String? = null, val roleDefinitionId: String? = null, val scope: String? = null, val type: String)

Role management policy

Link copied to clipboard
data class GetRoleManagementPolicyResult(val description: String? = null, val displayName: String? = null, val effectiveRules: List<Any>, val id: String, val isOrganizationDefault: Boolean? = null, val lastModifiedBy: PrincipalResponse, val lastModifiedDateTime: String, val name: String, val policyProperties: PolicyPropertiesResponse, val rules: List<Any>? = null, val scope: String? = null, val type: String)

Role management policy

data class GetScopeAccessReviewHistoryDefinitionByIdResult(val createdDateTime: String, val decisions: List<String>? = null, val displayName: String? = null, val endDate: String? = null, val id: String, val instances: List<AccessReviewHistoryInstanceResponse>? = null, val interval: Int? = null, val name: String, val numberOfOccurrences: Int? = null, val principalId: String, val principalName: String, val principalType: String, val reviewHistoryPeriodEndDateTime: String, val reviewHistoryPeriodStartDateTime: String, val scopes: List<AccessReviewScopeResponse>? = null, val startDate: String? = null, val status: String, val type: String, val userPrincipalName: String)

Access Review History Definition.

data class GetScopeAccessReviewScheduleDefinitionByIdResult(val assignmentState: String, val autoApplyDecisionsEnabled: Boolean? = null, val backupReviewers: List<AccessReviewReviewerResponse>? = null, val defaultDecision: String? = null, val defaultDecisionEnabled: Boolean? = null, val descriptionForAdmins: String? = null, val descriptionForReviewers: String? = null, val displayName: String? = null, val endDate: String? = null, val excludeResourceId: String? = null, val excludeRoleDefinitionId: String? = null, val expandNestedMemberships: Boolean? = null, val id: String, val inactiveDuration: String? = null, val includeAccessBelowResource: Boolean? = null, val includeInheritedAccess: Boolean? = null, val instanceDurationInDays: Int? = null, val instances: List<AccessReviewInstanceResponse>? = null, val interval: Int? = null, val justificationRequiredOnApproval: Boolean? = null, val mailNotificationsEnabled: Boolean? = null, val name: String, val numberOfOccurrences: Int? = null, val principalId: String, val principalName: String, val principalType: String, val recommendationLookBackDuration: String? = null, val recommendationsEnabled: Boolean? = null, val reminderNotificationsEnabled: Boolean? = null, val resourceId: String, val reviewers: List<AccessReviewReviewerResponse>? = null, val reviewersType: String, val roleDefinitionId: String, val startDate: String? = null, val status: String, val type: String, val userPrincipalName: String)

Access Review Schedule Definition.

Link copied to clipboard
data class GetVariableAtManagementGroupResult(val columns: List<PolicyVariableColumnResponse>, val id: String, val name: String, val systemData: SystemDataResponse, val type: String)

The variable.

Link copied to clipboard
data class GetVariableResult(val columns: List<PolicyVariableColumnResponse>, val id: String, val name: String, val systemData: SystemDataResponse, val type: String)

The variable.

Link copied to clipboard
data class GetVariableValueAtManagementGroupResult(val id: String, val name: String, val systemData: SystemDataResponse, val type: String, val values: List<PolicyVariableValueColumnValueResponse>)

The variable value.

Link copied to clipboard
data class GetVariableValueResult(val id: String, val name: String, val systemData: SystemDataResponse, val type: String, val values: List<PolicyVariableValueColumnValueResponse>)

The variable value.

Link copied to clipboard
data class IdentityResponse(val principalId: String, val tenantId: String, val type: String? = null, val userAssignedIdentities: Map<String, IdentityResponseUserAssignedIdentities>? = null)

Identity for the resource. Policy assignments support a maximum of one identity. That is either a system assigned identity or a single user assigned identity.

Link copied to clipboard
data class IdentityResponseUserAssignedIdentities(val clientId: String, val principalId: String)

List of policy definition versions.

data class ListPolicyDefinitionVersionAllBuiltinsResult(val nextLink: String? = null, val value: List<PolicyDefinitionVersionResponse>? = null)

List of policy definition versions.

Link copied to clipboard
data class ListPolicyDefinitionVersionAllResult(val nextLink: String? = null, val value: List<PolicyDefinitionVersionResponse>? = null)

List of policy definition versions.

List of policy set definition versions.

List of policy set definition versions.

Link copied to clipboard
data class ListPolicySetDefinitionVersionAllResult(val nextLink: String? = null, val value: List<PolicySetDefinitionVersionResponse>? = null)

List of policy set definition versions.

Link copied to clipboard
data class ManagementLockOwnerResponse(val applicationId: String? = null)

Lock owner properties.

Link copied to clipboard
data class NonComplianceMessageResponse(val message: String, val policyDefinitionReferenceId: String? = null)

A message that describes why a resource is non-compliant with the policy. This is shown in 'deny' error messages and on resource's non-compliant compliance results.

Link copied to clipboard
data class OverrideResponse(val kind: String? = null, val selectors: List<SelectorResponse>? = null, val value: String? = null)

The policy property value override.

Link copied to clipboard
data class ParameterDefinitionsValueResponse(val allowedValues: List<Any>? = null, val defaultValue: Any? = null, val metadata: ParameterDefinitionsValueResponseMetadata? = null, val schema: Any? = null, val type: String? = null)

The definition of a parameter that can be provided to the policy.

data class ParameterDefinitionsValueResponseMetadata(val assignPermissions: Boolean? = null, val description: String? = null, val displayName: String? = null, val strongType: String? = null)

General metadata for the parameter.

Link copied to clipboard
data class ParameterValuesValueResponse(val value: Any? = null)

The value of a parameter.

Link copied to clipboard
data class PermissionResponse(val actions: List<String>? = null, val condition: String, val conditionVersion: String, val dataActions: List<String>? = null, val notActions: List<String>? = null, val notDataActions: List<String>? = null)

Role definition permissions.

Link copied to clipboard
data class PIMOnlyModeSettingsResponse(val excludedAssignmentTypes: List<String>? = null, val excludes: List<UsersOrServicePrincipalSetResponse>? = null, val mode: String? = null)

The PIM Only Mode settings.

Link copied to clipboard

Expanded info of resource scope, role definition and policy

Link copied to clipboard
data class PolicyAssignmentPropertiesResponsePolicy(val id: String? = null, val lastModifiedBy: PrincipalResponse, val lastModifiedDateTime: String? = null)

Details of the policy

data class PolicyAssignmentPropertiesResponseRoleDefinition(val displayName: String? = null, val id: String? = null, val type: String? = null)

Details of role definition

Link copied to clipboard
data class PolicyAssignmentPropertiesResponseScope(val displayName: String? = null, val id: String? = null, val type: String? = null)

Details of the resource scope

Link copied to clipboard
data class PolicyDefinitionGroupResponse(val additionalMetadataId: String? = null, val category: String? = null, val description: String? = null, val displayName: String? = null, val name: String)

The policy definition group.

Link copied to clipboard
data class PolicyDefinitionReferenceResponse(val definitionVersion: String? = null, val effectiveDefinitionVersion: String, val groupNames: List<String>? = null, val latestDefinitionVersion: String, val parameters: Map<String, ParameterValuesValueResponse>? = null, val policyDefinitionId: String, val policyDefinitionReferenceId: String? = null)

The policy definition reference.

Link copied to clipboard
data class PolicyDefinitionVersionResponse(val description: String? = null, val displayName: String? = null, val id: String, val metadata: Any? = null, val mode: String? = null, val name: String, val parameters: Map<String, ParameterDefinitionsValueResponse>? = null, val policyRule: Any? = null, val policyType: String? = null, val systemData: SystemDataResponse, val type: String, val version: String? = null)

The ID of the policy definition version.

Link copied to clipboard

Expanded info of resource scope

Link copied to clipboard
data class PolicyPropertiesResponseScope(val displayName: String? = null, val id: String? = null, val type: String? = null)

Details of the resource scope

Link copied to clipboard
data class PolicySetDefinitionVersionResponse(val description: String? = null, val displayName: String? = null, val id: String, val metadata: Any? = null, val name: String, val parameters: Map<String, ParameterDefinitionsValueResponse>? = null, val policyDefinitionGroups: List<PolicyDefinitionGroupResponse>? = null, val policyDefinitions: List<PolicyDefinitionReferenceResponse>, val policyType: String? = null, val systemData: SystemDataResponse, val type: String, val version: String? = null)

The policy set definition version.

Link copied to clipboard
data class PolicyVariableColumnResponse(val columnName: String)

The variable column.

Link copied to clipboard
data class PolicyVariableValueColumnValueResponse(val columnName: String, val columnValue: Any)

The name value tuple for this variable value column.

Link copied to clipboard
data class PrincipalResponse(val displayName: String? = null, val email: String? = null, val id: String? = null, val type: String? = null)

The name of the entity last modified it

data class PrivateLinkAssociationPropertiesExpandedResponse(val privateLink: String? = null, val publicNetworkAccess: String? = null, val scope: String? = null, val tenantID: String? = null)

Private Link Association Properties.

data class ResourceManagementPrivateLinkEndpointConnectionsResponse(val privateEndpointConnections: List<String>? = null)
Link copied to clipboard
data class ResourceSelectorResponse(val name: String? = null, val selectors: List<SelectorResponse>? = null)

The resource selector to filter policies by resource properties.

data class RoleEligibilityScheduleRequestPropertiesResponseExpiration(val duration: String? = null, val endDateTime: String? = null, val type: String? = null)

Expiration of the role eligibility schedule

Schedule info of the role eligibility schedule

data class RoleEligibilityScheduleRequestPropertiesResponseTicketInfo(val ticketNumber: String? = null, val ticketSystem: String? = null)

Ticket Info of the role eligibility

Link copied to clipboard
data class RoleManagementPolicyApprovalRuleResponse(val id: String? = null, val ruleType: String, val setting: ApprovalSettingsResponse? = null, val target: RoleManagementPolicyRuleTargetResponse? = null)

The role management policy approval rule.

data class RoleManagementPolicyAuthenticationContextRuleResponse(val claimValue: String? = null, val id: String? = null, val isEnabled: Boolean? = null, val ruleType: String, val target: RoleManagementPolicyRuleTargetResponse? = null)

The role management policy authentication context rule.

data class RoleManagementPolicyEnablementRuleResponse(val enabledRules: List<String>? = null, val id: String? = null, val ruleType: String, val target: RoleManagementPolicyRuleTargetResponse? = null)

The role management policy enablement rule.

data class RoleManagementPolicyExpirationRuleResponse(val exceptionMembers: List<UserSetResponse>? = null, val id: String? = null, val isExpirationRequired: Boolean? = null, val maximumDuration: String? = null, val ruleType: String, val target: RoleManagementPolicyRuleTargetResponse? = null)

The role management policy expiration rule.

data class RoleManagementPolicyNotificationRuleResponse(val id: String? = null, val isDefaultRecipientsEnabled: Boolean? = null, val notificationLevel: String? = null, val notificationRecipients: List<String>? = null, val notificationType: String? = null, val recipientType: String? = null, val ruleType: String, val target: RoleManagementPolicyRuleTargetResponse? = null)

The role management policy notification rule.

data class RoleManagementPolicyPimOnlyModeRuleResponse(val id: String? = null, val pimOnlyModeSettings: PIMOnlyModeSettingsResponse? = null, val ruleType: String, val target: RoleManagementPolicyRuleTargetResponse? = null)

The role management policy PIM only mode rule.

Link copied to clipboard
data class RoleManagementPolicyRuleTargetResponse(val caller: String? = null, val enforcedSettings: List<String>? = null, val inheritableSettings: List<String>? = null, val level: String? = null, val operations: List<String>? = null, val targetObjects: List<String>? = null)

The role management policy rule target.

Link copied to clipboard
data class SelectorResponse(val in: List<String>? = null, val kind: String? = null, val notIn: List<String>? = null)

The selector expression.

Link copied to clipboard
data class SystemDataResponse(val createdAt: String? = null, val createdBy: String? = null, val createdByType: String? = null, val lastModifiedAt: String? = null, val lastModifiedBy: String? = null, val lastModifiedByType: String? = null)

Metadata pertaining to creation and last modification of the resource.

Link copied to clipboard
data class UserSetResponse(val description: String? = null, val id: String? = null, val isBackup: Boolean? = null, val userType: String? = null)

The detail of a user.

Link copied to clipboard
data class UsersOrServicePrincipalSetResponse(val displayName: String? = null, val id: String? = null, val type: String? = null)

The detail of a subject.