diff --git a/microsoft-graph.d.ts b/microsoft-graph.d.ts index 6641d42..022e51c 100644 --- a/microsoft-graph.d.ts +++ b/microsoft-graph.d.ts @@ -60,6 +60,12 @@ export type RiskState = | "atRisk" | "confirmedCompromised" | "unknownFutureValue"; +export type AllowInvitesFrom = + | "none" + | "adminsAndGuestInviters" + | "adminsGuestInvitersAndAllMembers" + | "everyone" + | "unknownFutureValue"; export type PermissionClassificationType = "low" | "medium" | "high" | "unknownFutureValue"; export type PermissionType = "application" | "delegated" | "delegatedUserConsentable"; export type PhoneType = @@ -79,7 +85,7 @@ export type EducationUserRole = "student" | "teacher" | "none" | "unknownFutureV export type WorkbookOperationStatus = "notStarted" | "running" | "succeeded" | "failed"; export type ActivityDomain = "unknown" | "work" | "personal" | "unrestricted"; export type AttendeeType = "required" | "optional" | "resource"; -export type FreeBusyStatus = "free" | "tentative" | "unknown" | "busy" | "oof" | "workingElsewhere"; +export type FreeBusyStatus = "unknown" | "free" | "tentative" | "busy" | "oof" | "workingElsewhere"; export type LocationType = | "default" | "conferenceRoom" @@ -98,9 +104,9 @@ export type AttachmentType = "file" | "item" | "reference"; export type AutomaticRepliesStatus = "disabled" | "alwaysEnabled" | "scheduled"; export type BodyType = "text" | "html"; export type CalendarColor = + | "auto" | "lightBlue" | "lightGreen" - | "auto" | "lightOrange" | "lightGray" | "lightYellow" @@ -122,9 +128,9 @@ export type CalendarSharingAction = "accept" | "acceptAndViewCalendar" | "viewCa export type CalendarSharingActionImportance = "primary" | "secondary"; export type CalendarSharingActionType = "accept"; export type CategoryColor = + | "none" | "preset0" | "preset1" - | "none" | "preset2" | "preset3" | "preset4" @@ -413,10 +419,6 @@ export type FirewallPreSharedKeyEncodingMethodType = "deviceDefault" | "none" | export type InternetSiteSecurityLevel = "userDefined" | "medium" | "mediumHigh" | "high"; export type IosNotificationAlertType = "deviceDefault" | "banner" | "modal" | "none"; export type IosUpdatesInstallStatus = - | "success" - | "available" - | "idle" - | "unknown" | "deviceOsHigherThanDesiredOsVersion" | "sharedDeviceUserLoggedInError" | "notSupportedOperation" @@ -430,7 +432,11 @@ export type IosUpdatesInstallStatus = | "downloadInsufficientSpace" | "downloadRequiresComputer" | "downloadFailed" - | "downloading"; + | "downloading" + | "success" + | "available" + | "idle" + | "unknown"; export type MiracastChannel = | "userDefined" | "one" @@ -809,7 +815,7 @@ export type PlannerPreviewType = "automatic" | "noPreview" | "checklist" | "desc export type OnenotePatchActionType = "Replace" | "Append" | "Delete" | "Insert" | "Prepend"; export type OnenotePatchInsertPosition = "After" | "Before"; export type OnenoteSourceService = "Unknown" | "OneDrive" | "OneDriveForBusiness" | "OnPremOneDriveForBusiness"; -export type OnenoteUserRole = "Owner" | "Contributor" | "None" | "Reader"; +export type OnenoteUserRole = "None" | "Owner" | "Contributor" | "Reader"; export type OperationStatus = "NotStarted" | "Running" | "Completed" | "Failed"; export type Status = "active" | "updated" | "deleted" | "ignored" | "unknownFutureValue"; export type DataPolicyOperationStatus = "notStarted" | "running" | "complete" | "failed" | "unknownFutureValue"; @@ -870,9 +876,9 @@ export type RegistryValueType = | "sz" | "unknownFutureValue"; export type SecurityNetworkProtocol = + | "unknown" | "ip" | "icmp" - | "unknown" | "igmp" | "ggp" | "ipv4" @@ -1188,7 +1194,7 @@ export interface SignIn extends Entity { * dismissed, atRisk, confirmedCompromised, unknownFutureValue. */ riskState?: NullableOption; - // Sign-in status. Possible values include Success and Failure. + // Sign-in status. Includes the error code and description of the error (in case of a sign-in failure). status?: NullableOption; // Display name of the user that initiated the sign-in. userDisplayName?: NullableOption; @@ -1284,8 +1290,20 @@ export interface User extends DirectoryObject { * Supports $filter and $orderby. */ displayName?: NullableOption; + /** + * The date and time when the user was hired or will start work in case of a future hire. Returned only on $select. + * Supports $filter. + */ + employeeHireDate?: NullableOption; // The employee identifier assigned to the user by the organization. Returned only on $select. Supports $filter. employeeId?: NullableOption; + // Represents organization data (e.g. division and costCenter) associated with a user. Returned only on $select. + employeeOrgData?: NullableOption; + /** + * Captures enterprise worker type: Employee, Contractor, Consultant, Vendor, etc. Returned only on $select. Supports + * $filter. + */ + employeeType?: NullableOption; /** * For an external user invited to the tenant using the invitation API, this property represents the invited user's * invitation status. For invited users, the state can be PendingAcceptance or Accepted, or null for all other users. @@ -1320,7 +1338,7 @@ export interface User extends DirectoryObject { * Used by enterprise applications to determine the legal age group of the user. This property is read-only and calculated * based on ageGroup and consentProvidedForMinor properties. Allowed values: null, minorWithOutParentalConsent, * minorWithParentalConsent, minorNoParentalConsentRequired, notAdult and adult. Refer to the legal age group property - * definitions for further information.) + * definitions for further information. */ legalAgeGroupClassification?: NullableOption; // State of license assignments for this user. Read-only. @@ -1568,6 +1586,7 @@ export interface User extends DirectoryObject { // The user's activities across devices. Read-only. Nullable. activities?: NullableOption; onlineMeetings?: NullableOption; + presence?: NullableOption; joinedTeams?: NullableOption; teamwork?: NullableOption; // Represents the To Do services available to a user. @@ -1768,6 +1787,7 @@ export interface Event extends OutlookItem { end?: NullableOption; // Set to true if the event has attachments. hasAttachments?: NullableOption; + hideAttendees?: NullableOption; /** * A unique identifier for an event across calendars. This ID is different for each occurrence in a recurring series. * Read-only. @@ -2056,7 +2076,10 @@ export interface Message extends OutlookItem { isReadReceiptRequested?: NullableOption; // The unique identifier for the message's parent mailFolder. parentFolderId?: NullableOption; - // The date and time the message was received. + /** + * The date and time the message was received. The date and time information uses ISO 8601 format and is always in UTC + * time. For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'. + */ receivedDateTime?: NullableOption; // The email addresses to use when replying. replyTo?: NullableOption; @@ -2067,7 +2090,10 @@ export interface Message extends OutlookItem { * and sender properties of a message. */ sender?: NullableOption; - // The date and time the message was sent. + /** + * The date and time the message was sent. The date and time information uses ISO 8601 format and is always in UTC time. + * For example, midnight UTC on Jan 1, 2014 would look like this: '2014-01-01T00:00:00Z'. + */ sentDateTime?: NullableOption; // The subject of the message. subject?: NullableOption; @@ -2524,6 +2550,19 @@ export interface OnlineMeeting extends Entity { // The video teleconferencing ID. Read-only. videoTeleconferenceId?: NullableOption; } +export interface Presence extends Entity { + /** + * The supplemental information to a user's availability. Possible values are Available, Away, BeRightBack,Busy, + * DoNotDisturb, InACall, InAConferenceCall, Inactive,InAMeeting, Offline, OffWork,OutOfOffice, + * PresenceUnknown,Presenting, UrgentInterruptionsOnly. + */ + activity?: NullableOption; + /** + * The base presence information for a user. Possible values are Available, AvailableIdle, Away, BeRightBack, Busy, + * BusyIdle, DoNotDisturb, Offline, PresenceUnknown + */ + availability?: NullableOption; +} export interface Team extends Entity { /** * An optional label. Typically describes the data or business sensitivity of the team. Must match one of a pre-configured @@ -2667,7 +2706,10 @@ export interface Application extends DirectoryObject { * Users with a Microsoft work or school account in my organization’s Azure AD tenant (single tenant)AzureADMultipleOrgs: * Users with a Microsoft work or school account in any organization’s Azure AD tenant * (multi-tenant).AzureADandPersonalMicrosoftAccount: Users with a personal Microsoft account, or a work or school account - * in any organization’s Azure AD tenant.PersonalMicrosoftAccount: Users with a personal Microsoft account only. + * in any organization’s Azure AD tenant.PersonalMicrosoftAccount: Users with a personal Microsoft account only.For + * authenticating users with Azure AD B2C user flows, use AzureADandPersonalMicrosoftAccount. This value allows for the + * widest set of user identities including local accounts and user identities from Microsoft, Facebook, Google, Twitter, + * or any OpenID Connect provider. */ signInAudience?: NullableOption; // Custom strings that can be used to categorize and identify the application. Not nullable. @@ -2885,8 +2927,17 @@ export interface ServicePrincipal extends DirectoryObject { // tslint:disable-next-line: no-empty-interface export interface ClaimsMappingPolicy extends StsPolicy {} export interface DelegatedPermissionClassification extends Entity { + // The classification value being given. Possible value: low. Does not support $filter. classification?: NullableOption; + /** + * The unique identifier (id) for the delegated permission listed in the oauth2PermissionScopes collection of the + * servicePrincipal. Required on create. Does not support $filter. + */ permissionId?: NullableOption; + /** + * The claim value (value) for the delegated permission listed in the oauth2PermissionScopes collection of the + * servicePrincipal. Does not support $filter. + */ permissionName?: NullableOption; } export interface Endpoint extends DirectoryObject { @@ -2947,6 +2998,30 @@ export interface AdministrativeUnit extends DirectoryObject { scopedRoleMembers?: NullableOption; extensions?: NullableOption; } +export interface AuthorizationPolicy extends PolicyBase { + // Indicates whether users can sign up for email based subscriptions. + allowedToSignUpEmailBasedSubscriptions?: boolean; + // Indicates whether the Self-Serve Password Reset feature can be used by users on the tenant. + allowedToUseSSPR?: boolean; + // Indicates whether a user can join the tenant by email validation. + allowEmailVerifiedUsersToJoinOrganization?: boolean; + /** + * Indicates who can invite external users to the organization. Possible values are:none - Prevent everyone, including + * admins, from inviting external users. Default setting for US Government.adminsAndGuestInviters - Allow members of + * Global Administrators, User Administrators, and Guest Inviter roles to invite external + * users.adminsGuestInvitersAndAllMembers - Allow the above admin roles and all other User role members to invite external + * users.everyone - Allow everyone in the organization, including guest users, to invite external users. Default setting + * for all cloud environments except US Government. + */ + allowInvitesFrom?: NullableOption; + /** + * To disable the use of MSOL PowerShell set this property to true. Setting to true will also disable user-based access to + * the legacy service endpoint used by MSOL PowerShell. This does not affect Azure AD Connect or Microsoft Graph. + */ + blockMsolPowerShell?: NullableOption; + // Specifies certain customizable permissions for default user role. + defaultUserRolePermissions?: DefaultUserRolePermissions; +} export interface CertificateBasedAuthConfiguration extends Entity { // Collection of certificate authorities which creates a trusted certificate chain. certificateAuthorities?: CertificateAuthority[]; @@ -3601,21 +3676,62 @@ export interface OrgContact extends DirectoryObject { transitiveMemberOf?: NullableOption; } export interface PermissionGrantConditionSet extends Entity { + /** + * A list of appId values for the client applications to match with, or a list with the single value 'all' to match any + * client application. Default is the single value 'all'. + */ clientApplicationIds?: NullableOption; + /** + * A list of Microsoft Partner Network (MPN) IDs for verified publishers of the client application, or a list with the + * single value 'all' to match with client apps from any publisher. Default is the single value 'all'. + */ clientApplicationPublisherIds?: NullableOption; + /** + * Set to true to only match on client applications with a verified publisher. Set to false to match on any client app, + * even if it does not have a verified publisher. Default is false. + */ clientApplicationsFromVerifiedPublisherOnly?: NullableOption; + /** + * A list of Azure Active Directory tenant IDs in which the client application is registered, or a list with the single + * value 'all' to match with client apps registered in any tenant. Default is the single value 'all'. + */ clientApplicationTenantIds?: NullableOption; + /** + * The permission classification for the permission being granted, or 'all' to match with any permission classification + * (including permissions which are not classified). Default is all. + */ permissionClassification?: NullableOption; + /** + * The list of id values for the specific permissions to match with, or a list with the single value 'all' to match with + * any permission. The id of delegated permissions can be found in the oauth2PermissionScopes property of the API's + * **servicePrincipal** object. The id of application permissions can be found in the appRoles property of the API's + * **servicePrincipal** object. The id of resource-specific application permissions can be found in the + * resourceSpecificApplicationPermissions property of the API's **servicePrincipal** object. Default is the single value + * 'all'. + */ permissions?: NullableOption; + /** + * The permission type of the permission being granted. Possible values: application for application permissions (e.g. app + * roles) or delegated for delegated permissions. The value delegatedUserConsentable indicates delegated permissions which + * have not been configured by the API publisher to require admin consent—this value may be used in built-in permission + * grant policies, but cannot be used in custom permission grant policies. Required. + */ permissionType?: NullableOption; + /** + * The appId of the resource application (e.g. the API) for which a permission is being granted, or any to match with any + * resource application or API. Default is any. + */ resourceApplication?: NullableOption; } export interface PermissionGrantPolicy extends PolicyBase { + // Condition sets which are excluded in this permission grant policy. Automatically expanded on GET. excludes?: NullableOption; + // Condition sets which are included in this permission grant policy. Automatically expanded on GET. includes?: NullableOption; } export interface PolicyRoot extends Entity { activityBasedTimeoutPolicies?: NullableOption; + authorizationPolicy?: NullableOption; claimsMappingPolicies?: NullableOption; homeRealmDiscoveryPolicies?: NullableOption; permissionGrantPolicies?: NullableOption; @@ -5040,7 +5156,8 @@ export interface SchemaExtension extends Entity { /** * The appId of the application that is the owner of the schema extension. This property can be supplied on creation, to * set the owner. If not supplied, then the calling application's appId will be set as the owner. In either case, the - * signed-in user must be the owner of the application. Once set, this property is read-only and cannot be changed. + * signed-in user must be the owner of the application. So, for example, if creating a new schema extension definition + * using Graph Explorer, you must supply the owner property. Once set, this property is read-only and cannot be changed. */ owner?: string; // The collection of property names and types that make up the schema extension definition. @@ -5061,6 +5178,7 @@ export interface CloudCommunications extends Entity { calls?: NullableOption; callRecords?: NullableOption; onlineMeetings?: NullableOption; + presences?: NullableOption; } export interface Call extends Entity { // The callback URL on which callbacks will be delivered. Must be https. @@ -9280,6 +9398,7 @@ export interface DataPolicyOperation extends Entity { export interface Alert extends Entity { // Name or alias of the activity group (attacker) this alert is attributed to. activityGroupName?: NullableOption; + alertDetections?: NullableOption; // Name of the analyst the alert is assigned to for triage, investigation, or remediation (supports update). assignedTo?: NullableOption; // Azure subscription ID, present if this alert is related to an Azure resource. @@ -9328,6 +9447,8 @@ export interface Alert extends Entity { hostStates?: NullableOption; // IDs of incidents related to current alert. incidentIds?: NullableOption; + investigationSecurityStates?: NullableOption; + lastEventDateTime?: NullableOption; /** * Time at which the alert entity was last modified. The Timestamp type represents date and time information using ISO * 8601 format and is always in UTC time. For example, midnight UTC on Jan 1, 2014 would look like this: @@ -9336,6 +9457,7 @@ export interface Alert extends Entity { lastModifiedDateTime?: NullableOption; // Threat Intelligence pertaining to malware related to this alert. malwareStates?: NullableOption; + messageSecurityStates?: NullableOption; // Security-related stateful information generated by the provider about the network connection(s) related to this alert. networkConnections?: NullableOption; // Security-related stateful information generated by the provider about the process or processes related to this alert. @@ -9374,6 +9496,7 @@ export interface Alert extends Entity { * properties triggered the alert generation. */ triggers?: NullableOption; + uriClickSecurityStates?: NullableOption; // Security-related stateful information generated by the provider about the user accounts related to this alert. userStates?: NullableOption; /** @@ -9534,6 +9657,11 @@ export interface Channel extends Entity { * programmatically with Create team. Default: false. */ isFavoriteByDefault?: NullableOption; + /** + * The type of the channel. Can be set during creation and cannot be changed. Possible values are: standard - Channel + * inherits the list of members of the parent team; private - Channel can have members that are a subset of all the + * members on the parent team. + */ membershipType?: NullableOption; /** * A hyperlink that will go to the channel in Microsoft Teams. This is the URL that you get when you right-click a channel @@ -9543,6 +9671,7 @@ export interface Channel extends Entity { webUrl?: NullableOption; // Metadata for the location where the channel's files are stored. filesFolder?: NullableOption; + // A collection of membership records associated with the channel. members?: NullableOption; // A collection of all the messages in the channel. A navigation property. Nullable. messages?: NullableOption; @@ -9709,6 +9838,7 @@ export interface WorkforceIntegration extends ChangeTrackedEntity { url?: NullableOption; } export interface UserScopeTeamsAppInstallation extends TeamsAppInstallation { + // The chat between the user and Teams app. chat?: NullableOption; } export interface ScheduleChangeRequest extends ChangeTrackedEntity { @@ -10057,7 +10187,7 @@ export interface SignInStatus { // Provides additional details on the sign-in activity additionalDetails?: NullableOption; /** - * Provides the 5-6digit error code that's generated during a sign-in failure. Check out the list of error codes and + * Provides the 5-6 digit error code that's generated during a sign-in failure. Check out the list of error codes and * messages. */ errorCode?: NullableOption; @@ -10117,13 +10247,19 @@ export interface AssignedPlan { * look like this: '2014-01-01T00:00:00Z' */ assignedDateTime?: NullableOption; - // For example, 'Enabled'. + // Condition of the capability assignment. The possible values are Enabled, Warning, Suspended, Deleted, LockedOut. capabilityStatus?: NullableOption; // The name of the service; for example, 'Exchange'. service?: NullableOption; // A GUID that identifies the service plan. servicePlanId?: NullableOption; } +export interface EmployeeOrgData { + // The cost center associated with the user. Returned only on $select. Supports $filter. + costCenter?: NullableOption; + // The name of the division in which the user works. Returned only on $select. Supports $filter. + division?: NullableOption; +} export interface ObjectIdentity { /** * Specifies the issuer of the identity, for example facebook.com.For local accounts (where signInType is not federated), @@ -10631,6 +10767,21 @@ export interface CertificateAuthority { } // tslint:disable-next-line: no-empty-interface export interface ComplexExtensionValue {} +export interface DefaultUserRolePermissions { + // Indicates whether the default user role can create applications. + allowedToCreateApps?: boolean; + // Indicates whether the default user role can create security groups. + allowedToCreateSecurityGroups?: boolean; + // Indicates whether the default user role can read other users. + allowedToReadOtherUsers?: boolean; + /** + * Indicates if user consent to apps is allowed, and if it is, which permission to grant consent and which app consent + * policy (permissionGrantPolicy) govern the permission for users to grant consent. Value should be in the format + * managePermissionGrantsForSelf.{id}, where {id} is the id of a built-in or custom app consent policy. An empty list + * indicates user consent to apps is disabled. + */ + permissionGrantPoliciesAssigned?: NullableOption; +} export interface DomainState { /** * Timestamp for when the last activity occurred. The value is updated when an operation is scheduled, the asynchronous @@ -13204,18 +13355,32 @@ export interface RolePermission { resourceActions?: NullableOption; } export interface SearchHit { + // The name of the content source which the externalItem is part of . contentSource?: NullableOption; + // The internal identifier for the item. hitId?: NullableOption; + // The rank or the order of the result. rank?: NullableOption; + // A summary of the result, if a summary is available. summary?: NullableOption; resource?: NullableOption; } export interface SearchHitsContainer { + // A collection of the search results. hits?: NullableOption; + /** + * Provides information if more results are available. Based on this information, you can adjust the from and size + * properties of the searchRequest accordingly. + */ moreResultsAvailable?: NullableOption; + /** + * The total number of results. Note this is not the number of results on the page, but the total number of results + * satisfying the query. + */ total?: NullableOption; } export interface SearchQuery { + // The search query containing the search terms. Required. queryString?: string; } export interface SearchRequest { @@ -13228,7 +13393,9 @@ export interface SearchRequest { size?: number; } export interface SearchResponse { + // A collection of search results. hitsContainers?: NullableOption; + // Contains the search terms sent in the initial search query. searchTerms?: NullableOption; } // tslint:disable-next-line: no-empty-interface @@ -13508,6 +13675,11 @@ export interface VisualInfo { */ displayText?: string; } +export interface AlertDetection { + detectionType?: NullableOption; + method?: NullableOption; + name?: NullableOption; +} export interface AlertHistoryState { appId?: NullableOption; assignedTo?: NullableOption; @@ -13601,6 +13773,11 @@ export interface HostSecurityState { // Provider-generated/calculated risk score of the host. Recommended value range of 0-1, which equates to a percentage. riskScore?: NullableOption; } +// tslint:disable-next-line: interface-name +export interface InvestigationSecurityState { + name?: NullableOption; + status?: NullableOption; +} export interface MalwareState { // Provider-generated malware category (for example, trojan, ransomware, etc.). category?: NullableOption; @@ -13616,6 +13793,17 @@ export interface MalwareState { */ wasRunning?: NullableOption; } +export interface MessageSecurityState { + connectingIP?: NullableOption; + deliveryAction?: NullableOption; + deliveryLocation?: NullableOption; + directionality?: NullableOption; + internetMessageId?: NullableOption; + messageFingerprint?: NullableOption; + messageReceivedDateTime?: NullableOption; + messageSubject?: NullableOption; + networkMessageId?: NullableOption; +} export interface NetworkConnection { // Name of the application managing the network connection (for example, Facebook or SMTP). applicationName?: NullableOption; @@ -13765,6 +13953,14 @@ export interface SecurityVendorInformation { // Name of the alert vendor (for example, Microsoft, Dell, FireEye). Required vendor?: NullableOption; } +export interface UriClickSecurityState { + clickAction?: NullableOption; + clickDateTime?: NullableOption; + id?: NullableOption; + sourceId?: NullableOption; + uriDomain?: NullableOption; + verdict?: NullableOption; +} export interface UserSecurityState { // AAD User object identifier (GUID) - represents the physical/multi-account user entity. aadUserId?: NullableOption;