Show / Hide Table of Contents

Class Permission

A permission for a file. A permission grants a user, group, domain, or the world access to a file or a folder hierarchy. By default, permissions requests only return a subset of fields. Permission kind, ID, type, and role are always returned. To retrieve specific fields, see https://developers.google.com/workspace/drive/api/guides/fields-parameter. Some resource methods (such as permissions.update) require a permissionId. Use the permissions.list method to retrieve the ID for a file, folder, or shared drive.

Inheritance
object
Permission
Implements
IDirectResponseSchema
Inherited Members
object.Equals(object)
object.Equals(object, object)
object.GetHashCode()
object.GetType()
object.MemberwiseClone()
object.ReferenceEquals(object, object)
object.ToString()
Namespace: Google.Apis.Drive.v3.Data
Assembly: Google.Apis.Drive.v3.dll
Syntax
public class Permission : IDirectResponseSchema

Properties

AllowFileDiscovery

Whether the permission allows the file to be discovered through search. This is only applicable for permissions of type domain or anyone.

Declaration
[JsonProperty("allowFileDiscovery")]
public virtual bool? AllowFileDiscovery { get; set; }
Property Value
Type Description
bool?

Deleted

Output only. Whether the account associated with this permission has been deleted. This field only pertains to user and group permissions.

Declaration
[JsonProperty("deleted")]
public virtual bool? Deleted { get; set; }
Property Value
Type Description
bool?

DisplayName

Output only. The "pretty" name of the value of the permission. The following is a list of examples for each type of permission: * user - User's full name, as defined for their Google account, such as "Joe Smith." * group - Name of the Google Group, such as "The Company Administrators." * domain - String domain name, such as "thecompany.com." * anyone - No displayName is present.

Declaration
[JsonProperty("displayName")]
public virtual string DisplayName { get; set; }
Property Value
Type Description
string

Domain

The domain to which this permission refers.

Declaration
[JsonProperty("domain")]
public virtual string Domain { get; set; }
Property Value
Type Description
string

ETag

The ETag of the item.

Declaration
public virtual string ETag { get; set; }
Property Value
Type Description
string

EmailAddress

The email address of the user or group to which this permission refers.

Declaration
[JsonProperty("emailAddress")]
public virtual string EmailAddress { get; set; }
Property Value
Type Description
string

ExpirationTime

DateTime representation of ExpirationTimeRaw.

Declaration
[JsonIgnore]
[Obsolete("This property is obsolete and may behave unexpectedly; please use ExpirationTimeDateTimeOffset instead.")]
public virtual DateTime? ExpirationTime { get; set; }
Property Value
Type Description
DateTime?

ExpirationTimeDateTimeOffset

DateTimeOffset representation of ExpirationTimeRaw.

Declaration
[JsonIgnore]
public virtual DateTimeOffset? ExpirationTimeDateTimeOffset { get; set; }
Property Value
Type Description
DateTimeOffset?

ExpirationTimeRaw

The time at which this permission will expire (RFC 3339 date-time). Expiration times have the following restrictions: - They can only be set on user and group permissions - The time must be in the future - The time cannot be more than a year in the future

Declaration
[JsonProperty("expirationTime")]
public virtual string ExpirationTimeRaw { get; set; }
Property Value
Type Description
string

Id

Output only. The ID of this permission. This is a unique identifier for the grantee, and is published in User resources as permissionId. IDs should be treated as opaque values.

Declaration
[JsonProperty("id")]
public virtual string Id { get; set; }
Property Value
Type Description
string

InheritedPermissionsDisabled

When true, only organizers, owners, and users with permissions added directly on the item can access it.

Declaration
[JsonProperty("inheritedPermissionsDisabled")]
public virtual bool? InheritedPermissionsDisabled { get; set; }
Property Value
Type Description
bool?

Kind

Output only. Identifies what kind of resource this is. Value: the fixed string "drive#permission".

Declaration
[JsonProperty("kind")]
public virtual string Kind { get; set; }
Property Value
Type Description
string

PendingOwner

Whether the account associated with this permission is a pending owner. Only populated for user type permissions for files that are not in a shared drive.

Declaration
[JsonProperty("pendingOwner")]
public virtual bool? PendingOwner { get; set; }
Property Value
Type Description
bool?

PermissionDetails

Output only. Details of whether the permissions on this item are inherited or directly on this item.

Declaration
[JsonProperty("permissionDetails")]
public virtual IList<Permission.PermissionDetailsData> PermissionDetails { get; set; }
Property Value
Type Description
IList<Permission.PermissionDetailsData>

PhotoLink

Output only. A link to the user's profile photo, if available.

Declaration
[JsonProperty("photoLink")]
public virtual string PhotoLink { get; set; }
Property Value
Type Description
string

Role

The role granted by this permission. While new values may be supported in the future, the following are currently allowed: * owner * organizer * fileOrganizer * writer * commenter * reader

Declaration
[JsonProperty("role")]
public virtual string Role { get; set; }
Property Value
Type Description
string

TeamDrivePermissionDetails

Output only. Deprecated: Output only. Use permissionDetails instead.

Declaration
[JsonProperty("teamDrivePermissionDetails")]
public virtual IList<Permission.TeamDrivePermissionDetailsData> TeamDrivePermissionDetails { get; set; }
Property Value
Type Description
IList<Permission.TeamDrivePermissionDetailsData>

Type

The type of the grantee. Valid values are: * user * group * domain * anyone When creating a permission, if type is user or group, you must provide an emailAddress for the user or group. When type is domain, you must provide a domain. There isn't extra information required for an anyone type.

Declaration
[JsonProperty("type")]
public virtual string Type { get; set; }
Property Value
Type Description
string

View

Indicates the view for this permission. Only populated for permissions that belong to a view. published and metadata are the only supported values. - published: The permission's role is published_reader. - metadata: The item is only visible to the metadata view because the item has limited access and the scope has at least read access to the parent. Note: The metadata view is currently only supported on folders.

Declaration
[JsonProperty("view")]
public virtual string View { get; set; }
Property Value
Type Description
string

Implements

IDirectResponseSchema
In this article
Back to top Generated by DocFX