Shared Folder - Without sync-down

This page details the process to share a shared folder without needing to sync down the vault first.

Overview

This flow is appropriate when the app does not sync Keeper vault data into a local SDK instance (sync_down / VaultOnline) and instead uses authenticated API calls directly after login.

Use this path when you need to read shared folder metadata, invite or update a user, remove a user, work with teams, or load record payloads by UID as soon as IAuthentication is available.

For a full synced vault, shared-folder modeling as in VaultOnline, and the broadest integration surface, prefer IVaultSharedFolder / VaultOnline instead.

Scope and limitations

  • Shared folder skip-sync targets apps that do not run a full sync_down / VaultOnline tree. It supports selected shared-folder and record operations right after authentication.

  • Users: Add, update, or remove individual users (email), as in the previous release.

  • Teams: You can add or remove a team on a shared folder and list teams available for sharing, without loading the vault.

  • Records: You can list record UIDs linked to a shared folder and fetch and decrypt records without syncing the vault.

chevron-rightDotNet SDK Prerequisiteshashtag

Valid IAuthentication after login ( vault.Auth from VaultOnline or AuthenticateAndGetVault.GetAuthAsync from examples below or any object that implements IAuthentication interface)

Structures and classes

Type
Purpose

ISharedFolderSkipSyncDown

Interface for dependency injection and testing.

SharedFolderSkipSyncDown

Static entry points (GetSharedFolderAsync, PutUserToSharedFolderAsync, RemoveUserFromSharedFolderAsync).

SharedFolderSkipSyncDown.SharedFolderSkipSyncDownClient

Default implementation of ISharedFolderSkipSyncDown.

Use this path when your app needs to read shared folder metadata, invite or update a user, or remove a user from a shared folder as soon as authentication with keeper is completed.

For full vault integration (synced tree, teams, etc.), use IVaultSharedFolder / VaultOnline instead.

Get Shared Folder By UID

Loads one shared folder by UID. The request includes shared folders while returning shared folder along with user flows, team flows, and record UID listing.

chevron-rightDotNet SDKhashtag

Function : GetSharedFolderAsync

public static async Task<GetSharedFoldersResponse> GetSharedFolderAsync(
    IAuthentication auth,
    string sharedFolderUid)

Returns null if the session cannot access the folder or the response has no shared folder entries.

Arguments:

parameter
Description

Auth

Authenticated session with interface IAuthentication

SharedFolderUid

UID of shared Folder to get data of

chevron-rightPowerCommanderhashtag

Command : Get-KeeperSharedFolderDetailsSkipSync

Fetches shared folder payload from the server (get_shared_folders) without a full vault sync.

Parameter
Description

-SharedFolderUid

Required. Shared folder UID.

-IncludePermissions

Include per-record CanEdit / CanShare, per-user and per-team flags, and folder key / default-permission fields. Omit for compact output.

-PassThru

Return the raw GetSharedFoldersResponse from the SDK.

Usage:

chevron-rightPython SDKhashtag

Get Records from Shared Folder

Returns distinct record UIDs attached to the folder. Empty if the folder is unavailable or has no records.

chevron-rightDotNet SDKhashtag

Function : GetRecordUidsFromSharedFolderAsync

Arguments:

Parameter
Description

-SharedFolderUid

Shared Folder UID to get records for

chevron-rightPowerCommanderhashtag

Command : Get-KeeperSharedFolderRecordUidsSkipSync

Fetches shared folder payload from the server (get_shared_folders) without a full vault sync.

Flags:

Parameter
Description

-SharedFolderUid

Required.

Usage:

chevron-rightPython SDKhashtag

Sharing Shared Folder with user

Add or Update a user for shared folder. Optional IUserShareOptions (e.g. SharedFolderUserOptions) controls permissions and expiration.

chevron-rightDotNet SDKhashtag

Sharing with user

Function : PutUserToSharedFolderAsync

Options can be something like this

Arguments:

parameter
Description

Auth

Authenticated session with interface IAuthentication

SharedFolderUid

UID of shared Folder in reference

userId

email of user to which we want to share

options

SharedFolderUserOptions object as shown above

chevron-rightPowerCommanderhashtag

Command : Grant-KeeperSharedFolderUserSkipSync

Parameter
Description

-SharedFolder

Required (position 0).

-User

Required (position 1). User email / id as accepted by the API.

-ManageRecords, -ManageUsers

Optional booleans ($true / $false / omit).

-ExpireIn, -ExpireAt

Optional expiration (same semantics as other sharing cmdlets, e.g. Grant-KeeperRecordAccess).

-ShowDetail

After success, runs Get-KeeperSharedFolderRecordsSkipSync with -Mode SharedKey and prints a summary.

-PassThru

With -ShowDetail, returns the RecordDetailsSkipSyncResult from the listing step.

Usage:

chevron-rightPython SDKhashtag

Revoking Shared Folder From user

Remove access to a user. Optional IUserShareOptions (e.g. SharedFolderUserOptions) controls permissions and expiration.

chevron-rightDotNet SDKhashtag

Function : RemoveUserFromSharedFolderAsync

Arguments:

parameter
Description

Auth

Authenticated session with interface IAuthentication

SharedFolderUid

UID of shared Folder in reference

userId

email of user to which we want to revoke

chevron-rightPowerCommanderhashtag

Command: Revoke-KeeperSharedFolderUserSkipSync

Removes a user (RemoveUserFromSharedFolderAsync). Supports ShouldProcess.

Parameter
Description

-SharedFolder, -User

Required (positions 0 and 1).

-ShowDetail, -PassThru

Same pattern as grant.

Usage:

chevron-rightPython SDKhashtag

GetAvailableTeamsForShareAsync

Returns teams the current user may share with, using the same approach - without loading the vault.

chevron-rightDotNet SDKhashtag

Function : GetAvailableTeamsForShareAsync

Arguments:

parameter
Description

Auth

Authenticated session with interface IAuthentication

chevron-rightPowerCommanderhashtag

Command: Get-KeeperAvailableTeamsSkipSync

Lists teams available for sharing (get_available_teams).

Usage:

chevron-rightPython SDKhashtag

Coming soon

GetTeamUidFromNameAsync

Resolves a team display name to a team UID when the name is unique. Returns null if none match; throws if multiple teams match (use an explicit Team Name).

chevron-rightDotNet SDKhashtag

Function : GetTeamUidFromNameAsync

Arguments:

parameter
Description

Auth

Authenticated session with interface IAuthentication

teamName

Resolve a unique team display name to a team UID

chevron-rightPowerCommanderhashtag

Command: Get-KeeperTeamUidSkipSync

Resolves a team display name to a team UID when the name is unique.

Parameter
Description

-TeamName

Resolve a unique team display name to a team UID

Example:

chevron-rightPython SDKhashtag

Coming soon

PutTeamToSharedFolderAsync

Add or update a team on the shared folder. Pass a team UID or, when it uniquely identifies a team, a display name. GetTeamUidFromNameAsync helps when you need an explicit UID. Optional IUserShareOptions applies where supported.

chevron-rightDotNet SDKhashtag

Function : PutTeamToSharedFolderAsync

Options can be something like this

Arguments:

parameter
Description

Auth

Authenticated session with interface IAuthentication

SharedFolderUid

UID of shared Folder to get data of

teamUid

team uid which we want to share

options

SharedFolderUserOptions object as shown above

chevron-rightPowerCommanderhashtag

Command: Grant-KeeperSharedFolderTeamSkipSync

Adds or updates a team (PutTeamToSharedFolderAsync). Team may be a UID or a name the SDK can resolve. Supports ShouldProcess.

Parameter
Description

-SharedFolder, -Team

Required (positions 0 and 1).

-ManageRecords, -ManageUsers

Optional.

-ExpireIn, -ExpireAt

Optional.

-ShowDetail, -PassThru

Same as user grant.

Example:

chevron-rightPython SDKhashtag

RevokeTeamFromSharedFolderAsync

Revoke access of a team on the shared folder. Pass a team UID or, when it uniquely identifies a team, a display name. GetTeamUidFromNameAsync helps when you need an explicit UID. Optional IUserShareOptions applies where supported.

chevron-rightDotNet SDKhashtag

Function : RemoveTeamFromSharedFolderAsync

Arguments:

parameter
Description

Auth

Authenticated session with interface IAuthentication

SharedFolderUid

UID of shared Folder to get data of

teamUid

team uid which we want to share

chevron-rightPowerCommanderhashtag

Command : Revoke-KeeperSharedFolderTeamSkipSync

Removes a team (RemoveTeamFromSharedFolderAsync). Supports ShouldProcess.

Parameter
Description

-SharedFolder, -Team

Required.

-ShowDetail, -PassThru

Same pattern as user revoke.

Example:

chevron-rightPython SDKhashtag

Record payloads without vault sync

Use when you already have record UIDs (for example from GetRecordUidsFromSharedFolderAsync) and want decrypted KeeperRecord instances without a full vault sync.

chevron-rightDotNet SDKhashtag

Function : GetRecordsAsync

Arguments:

parameter
Description

Auth

Authenticated session with interface IAuthentication

recordUids

record uid's

include

include record details RecordDetailsInclude matches the API (default DATA_PLUS_SHARE). Use DataOnly or ShareOnly for a narrower payload.

Returns : RecordDetailsSkipSyncResult

Member
Meaning

Records

Successfully decrypted records

NoPermissionRecordUids

From noPermissionRecordUid

FailedRecordUids

Rows returned but decrypt/load failed (e.g. unsupported recordKeyType)

InvalidRecordUids

Caller strings that could not be decoded to binary record UIDs and were not sent

chevron-rightPowerCommanderhashtag

Command : Get-KeeperRecordDetailsByUidSkipSync

Parameter
Description

-RecordUid

One or more record UIDs to load.

-SharedFolderUid

Shared folder UID. Required for SharedKey mode. In Auto mode, used as the fallback folder for records that fail owned-key decryption.

-Mode

Decryption strategy: Auto, OwnedKey, or SharedKey.

-Include

What data to return: DataPlusShare, DataOnly, or ShareOnly.

-PassThru

When set, returns the raw RecordDetailsSkipSyncResult object instead of formatted output.

Usage:

chevron-rightPython SDKhashtag

Coming soon

Example: authenticate, folder metadata, user share (no full vault sync)

chevron-rightDotNet SDKhashtag
chevron-rightPython SDKhashtag

Example: teams, record UIDs, and decrypt records (no full vault sync)

chevron-rightDotNet SDKhashtag
chevron-rightPython SDKhashtag

Coming Soon

Last updated

Was this helpful?