Get desktop application:
View/edit binary Protocol Buffers messages
PublicShare Provider API The Public Share Provider API is meant to manipulate public shares also called public links. Access to public shares can be limitted by a password. The share provider must store this password in a secure manner e.g. hashed with the bcrypt algorithm. The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119. The following are global requirements that apply to all methods: Any method MUST return CODE_OK on a succesful operation. Any method MAY return NOT_IMPLEMENTED. Any method MAY return INTERNAL. Any method MAY return UNKNOWN. Any method MAY return UNAUTHENTICATED.
Used as request type in: gateway.v1beta1.GatewayAPI.CreatePublicShare, LinkAPI.CreatePublicShare
OPTIONAL. Opaque information.
REQUIRED. The unique identifier for the shared storage resource.
REQUIRED. The restrictions to apply to the share.
OPTIONAL The description to add to the share.
OPTIONAL Indicates a share used for internal usage, not exposed by a ListPublicShares.
OPTIONAL Whether to notify the owner of a share when a file is uploaded to it.
OPTIONAL Comma-separated list of extra email addresses to notify when a file is uploaded to the share.
Used as response type in: gateway.v1beta1.GatewayAPI.CreatePublicShare, LinkAPI.CreatePublicShare
REQUIRED. The response status.
OPTIONAL. Opaque information.
REQUIRED. The created share.
Used as request type in: gateway.v1beta1.GatewayAPI.GetPublicShareByToken, LinkAPI.GetPublicShareByToken
OPTIONAL. Opaque information.
REQUIRED. The unlisted token to identify the public share.
OPTIONAL. The public link can require authentication.
OPTIONAL. If a signature should be included in the share.
Used as response type in: gateway.v1beta1.GatewayAPI.GetPublicShareByToken, LinkAPI.GetPublicShareByToken
REQUIRED. The response status.
OPTIONAL. Opaque information.
REQUIRED. The share.
OPTIONAL. The share password hash.
Used as request type in: gateway.v1beta1.GatewayAPI.GetPublicShare, LinkAPI.GetPublicShare
OPTIONAL. Opaque information.
REQUIRED. The reference to which the action should be performed.
OPTIONAL. If a signature should be included in the share.
Used as response type in: gateway.v1beta1.GatewayAPI.GetPublicShare, LinkAPI.GetPublicShare
REQUIRED. The response status.
OPTIONAL. Opaque information.
REQUIRED. The share.
Defines the restrictions for the public share.
Used in: ,
REQUIRED. The permissions for the share.
OPTIONAL. A password to protect the access to the public share.
OPTIONAL. An expiration date to protect the access to the public share.
Used as request type in: gateway.v1beta1.GatewayAPI.ListExistingPublicShares, gateway.v1beta1.GatewayAPI.ListPublicShares, LinkAPI.ListPublicShares
OPTIONAL. Opaque information.
OPTIONAL. The list of filters to apply if any.
OPTIONAL. If a signature should be included in the share.
OPTIONAL. Clients use this field to specify the maximum number of results to be returned by the server. The server may further constrain the maximum number of results returned in a single page. If the page_size is 0, the server will decide the number of results to be returned. see https://cloud.google.com/apis/design/design_patterns#list_pagination
OPTIONAL. The client uses this field to request a specific page of the list results.
REQUIRED. represents a filter to apply to the request.
Used in:
REQUIRED.
Used in:
Used as response type in: gateway.v1beta1.GatewayAPI.ListPublicShares, LinkAPI.ListPublicShares
REQUIRED. The response status.
OPTIONAL. Opaque information.
REQUIRED. The list of shares.
OPTIONAL. This field represents the pagination token to retrieve the next page of results. If the value is "", it means no further results for the request. see https://cloud.google.com/apis/design/design_patterns#list_pagination
Public share are relationships between a resource owner (usually the authenticated user) who grants permissions to a recipient (grantee) on a specified resource (resource_id). UserShares represents both user and groups. TODO(labkode): do we need to have resource_type stored on the share? This is not needed if when getting the shares a stat operation is launched against the the storage provider.
Used in: , , , , ,
REQUIRED. Opaque unique identifier of the share.
REQUIRED. The unlisted token to give public access to the public share.
REQUIRED. Unique identifier of the shared resource.
REQUIRED. Permissions for the grantee to use the resource.
REQUIRED. Uniquely identifies the owner of the share (the resource owner at the time of creating the share). In case the ownership of the underlying resource changes the share owner field MAY change to reflect the change of ownsership.
REQUIRED. Uniquely identifies a principal who initiates the share creation. A creator can create shares on behalf of the owner (because of re-sharing, because belonging to special groups, ...). Creator and owner often result in being the same principal.
REQUIRED. Creation time of the share.
REQUIRED. Last modification time of the share.
REQUIRED. Determines if the public share is password protected or not.
OPTIONAL. The expiration time for the public share.
OPTIONAL. Display name for the shared resource (such as file, directory basename or any user defined name). The display name MAY be different than the actual resource basename. This field is only useful for informational purposes, like for example, setting the window title in a public share HTML page.
OPTIONAL. A time constrained token with which GetPublicSharebyToken requests can be authenticated.
OPTIONAL A bool value indicating if the link is the quicklink the server will enforce a maximum of 1 quicklink per resource
OPTIONAL Description of the share.
OPTIONAL Whether to notify the owner of a share when a file is uploaded to it.
OPTIONAL Comma-separated list of extra email addresses to notify when a file is uploaded to the share.
The mechanism to authenticate a request to GetPublicShareByToken.
Used in:
The password of the share.
The signature issued by GetPublicShareByToken.
A share id identifies uniquely a // share in the share provider namespace. A ShareId MUST be unique inside the share provider.
Used in: ,
REQUIRED. The internal id used by service implementor to uniquely identity the share in the internal implementation of the service.
The permissions for a share.
Used in: ,
TODO(labkode): additional permissions for shares like re-sharing
The mechanism to identify a share in the share provider namespace.
Used in: , ,
REQUIRED. One of the specifications MUST be specified.
The id of the share.
The token to identify the public share.
Used as request type in: gateway.v1beta1.GatewayAPI.RemovePublicShare, LinkAPI.RemovePublicShare
OPTIONAL. Opaque information.
REQUIRED. The reference to which the action should be performed.
Used as response type in: gateway.v1beta1.GatewayAPI.RemovePublicShare, LinkAPI.RemovePublicShare
REQUIRED. The response status.
OPTIONAL. Opaque information.
A time constrained token which can be used to authenticate link share requests.
Used in: ,
REQUIRED. The signature value.
REQUIRED. The time until the signature becomes invalid.
Used as request type in: gateway.v1beta1.GatewayAPI.UpdatePublicShare, LinkAPI.UpdatePublicShare
OPTIONAL. Opaque information.
REQUIRED.
REQUIRED. The reference to the public share.
Available fields to update.
REQUIRED.
Used in:
REQUIRED. Defines the field to update.
REQUIRED. Contains the field that will be updated.
OPTIONAL Defines the public link display name.
OPTIONAL Defines the public link description.
OPTIONAL Whether to notify the owner of a share when a file is uploaded to it.
OPTIONAL Comma-separated list of extra email addresses to notify when a file is uploaded to the share.
REQUIRED.
Used in:
Used as response type in: gateway.v1beta1.GatewayAPI.UpdatePublicShare, LinkAPI.UpdatePublicShare
REQUIRED. The response status.
OPTIONAL. Opaque information.
REQUIRED. The updated public share.