DBSHARINGExpectedSharedContentLinkMetadata

@interface DBSHARINGExpectedSharedContentLinkMetadata
    : DBSHARINGSharedContentLinkMetadataBase <DBSerializable, NSCopying>

The ExpectedSharedContentLinkMetadata struct.

The expected metadata of a shared link for a file or folder when a link is first created for the content. Absent if the link already exists.

This class implements the DBSerializable protocol (serialize and deserialize instance methods), which is required for all Obj-C SDK API route objects.

  • Full constructor for the struct (exposes all instance variables).

    Declaration

    Objective-C

    - (nonnull instancetype)
            initWithAudienceOptions:
                (nonnull NSArray<DBSHARINGLinkAudience *> *)audienceOptions
                    currentAudience:(nonnull DBSHARINGLinkAudience *)currentAudience
                    linkPermissions:(nonnull NSArray<DBSHARINGLinkPermission *> *)
                                        linkPermissions
                  passwordProtected:(nonnull NSNumber *)passwordProtected
                        accessLevel:(nullable DBSHARINGAccessLevel *)accessLevel
    audienceRestrictingSharedFolder:
        (nullable DBSHARINGAudienceRestrictingSharedFolder *)
            audienceRestrictingSharedFolder
                             expiry:(nullable NSDate *)expiry;

    Swift

    init(audienceOptions: [DBSHARINGLinkAudience], currentAudience: DBSHARINGLinkAudience, linkPermissions: [DBSHARINGLinkPermission], passwordProtected: NSNumber, accessLevel: DBSHARINGAccessLevel?, audienceRestrictingSharedFolder: DBSHARINGAudienceRestrictingSharedFolder?, expiry: Date?)

    Parameters

    audienceOptions

    The audience options that are available for the content. Some audience options may be unavailable. For example, team_only may be unavailable if the content is not owned by a user on a team. The ‘default’ audience option is always available if the user can modify link settings.

    currentAudience

    The current audience of the link.

    linkPermissions

    A list of permissions for actions you can perform on the link.

    passwordProtected

    Whether the link is protected by a password.

    accessLevel

    The access level on the link for this file.

    audienceRestrictingSharedFolder

    The shared folder that prevents the link audience for this link from being more restrictive.

    expiry

    Whether the link has an expiry set on it. A link with an expiry will have its audience changed to members when the expiry is reached.

    Return Value

    An initialized instance.

  • Convenience constructor (exposes only non-nullable instance variables with no default value).

    Declaration

    Objective-C

    - (nonnull instancetype)
    initWithAudienceOptions:
        (nonnull NSArray<DBSHARINGLinkAudience *> *)audienceOptions
            currentAudience:(nonnull DBSHARINGLinkAudience *)currentAudience
            linkPermissions:
                (nonnull NSArray<DBSHARINGLinkPermission *> *)linkPermissions
          passwordProtected:(nonnull NSNumber *)passwordProtected;

    Swift

    init(audienceOptions: [DBSHARINGLinkAudience], currentAudience: DBSHARINGLinkAudience, linkPermissions: [DBSHARINGLinkPermission], passwordProtected: NSNumber)

    Parameters

    audienceOptions

    The audience options that are available for the content. Some audience options may be unavailable. For example, team_only may be unavailable if the content is not owned by a user on a team. The ‘default’ audience option is always available if the user can modify link settings.

    currentAudience

    The current audience of the link.

    linkPermissions

    A list of permissions for actions you can perform on the link.

    passwordProtected

    Whether the link is protected by a password.

    Return Value

    An initialized instance.