This document describes how to manage and use shared links to access certain folders and files in Oracle WebCenter Content.

Overview

WebCenter Content (on Marketplace) supports shared links feature via a new component called SharedLinks. There are two types of shared links:

Note: Both public links and applinks are not supported on systems where Records Management is enabled.

A public link is created either for a folder or for a file. A public link should have an expiration date and be protected by an access code. There are REST APIs to perform the following management operations:

A public link with R privilege on a file can be used to view that file’s metadata information and to view or download its renditions (system generated or custom uploaded) and attachments.

A public link with R privilege on a folder can be used to view that folder’s metadata information and to browse through its folder hierarchy. That public link can also be applied to all the descendant folders and files.

A public link with RW privilege on a folder, in addition to above read operations, can be used to create sub folders and upload new files or new revisions of existing files under that folder.

A public link with RWD privilege on a folder, in addition to above read, create, and upload operations, can be used to permanently delete any descendant folder or file under that folder.

Note: An anonymous user with a RWD public link cannot perform delete/move to trash operation.

When calling WebCenter Content REST API to access a folder or a file via a public link, you need to pass this query parameter: dLinkID={linkId}. If the public link has an access code, you can pass the access code either as a query parameter (dAccessCode={accessCode}) or as a Cookie header (with name dAccessCode-{linkID} or dAccessCode).

Examples

Example 1

Get document information for a file with dDocName ABContent012345 via a public link with ID LF7F0ADC33DA869AF8890EF876ABC0755573CE05CA48 and access code Xsdfwgr2h:

GET https://{host}:{port}/documents/wcc/api/v1.1/files/ABContent012345?dLinkID=LF7F0ADC33DA869AF8890EF876ABC0755573CE05CA48&dAccessCode=Xsdfwgr2h

Example 2

Browse a folder with ID F08E631C39EC3839268C6D87A307721D via a public link with ID LFA54057E782BFE2FD2AAAC8FAC8DC5620B02D4F64B2 and access code 7frnveyg9rone:

GET https://{host}:{port}/documents/wcc/api/v1.1/folders/F08E631C39EC3839268C6D87A307721D?dLinkID=LFA54057E782BFE2FD2AAAC8FAC8DC5620B02D4F64B2&dAccessCode=7frnveyg9rone

Example 3

Create a sub folder SubFolder1 in security group Secure under a folder with ID 76A08AFFFFE797345C6DD64BC30AEAF6 with a RW public link ID LF9E16DE60F25AB6E4356E0D1B361AABC6E219366459 and access code dery3f4fyer:

POST https://{host}:{port}/documents/wcc/api/v1.1/folders?fParentGUID=76A08AFFFFE797345C6DD64BC30AEAF6&fFolderName=SubFolder1&fSecurityGroup=Secure&dLinkID=LF9E16DE60F25AB6E4356E0D1B361AABC6E219366459&dAccessCode=dery3f4fyer

Example 4

Upload a file red_icon.png in security group Secure under the same folder (and use the same RW public link as in Example 3):

POST https://{host}:{port}/documents/wcc/api/v1.1/files/data?dLinkID=LF9E16DE60F25AB6E4356E0D1B361AABC6E219366459&dAccessCode=dery3f4fyer with a multi-part form that contains

An applink is created for a folder or a file on behalf of a custom application. An applink contains three elements:

There are REST APIs to perform the following operations:

An applink can have these privilege options: R, RW, RWD, and RWDA. Custom applications can use applinks to access linked files and folders based on applink’s privileges.

An applink with R privilege on a file can be used to view that file’s metadata information and to view or download its renditions (system generated or custom uploaded) and attachments.

An applink with R privilege on a folder can be used to view that folder’s metadata information and to browse through its folder hierarchy. That applink can also be applied to all the descendant folders and files.

An applink with RW privilege on a folder, in addition to above read operations, can be used to create sub folders and upload new files or new revisions of existing files under that folder. It can also be used to update metadata of the linked folder or any nested folder or file under the linked folder.

Note: To update security fields (like author, security group, account, or ACLs) of a folder or a file, it requires an applink with RWDA privilege.

An applink with RWD privilege on a folder, in addition to above read, create, upload, and update operations, can be used to permanently delete any descendant folder or file under that folder.

Note: An RWD applink does not support delete/move to trash operation.

An applink with RWDA privilege on a folder, in addition to above CRUD operations, can be used to update security fields on folder/file, and propagate folder metadata.

When calling WebCenter Content REST API to access a folder or a file via an applink, you need to pass this query parameter dAppLinkID={applink ID}. You can either pass the applink access token via this query parameter dAppLinkAccessToken={access token}, or via this http request header HTTP_X_APPLINK_ACCESS_TOKEN.

Examples

Example 1

Get document information for a file with dDocName WCContent012345 via an applink with ID LDSr62PSCOJgKp9n-ipgz35vKhGfhcja2aKTBj38QH2CEl4wFUM8T2v3zeJL31G6u5BTTbQUcsjnZIl-W-09wv_g== and access token S2CT1oZqqocEgxl-3R-Vc3_MsYS0xD21hVwraJ8MEqrLURb_Gh5ZGVNkGb816v9N:

GET https://{host}:{port}/documents/wcc/api/v1.1/files/WCContent012345?dAppLinkID=LDSr62PSCOJgKp9n-ipgz35vKhGfhcja2aKTBj38QH2CEl4wFUM8T2v3zeJL31G6u5BTTbQUcsjnZIl-W-09wv_g==&dAppLinkAccessToken=S2CT1oZqqocEgxl-3R-Vc3_MsYS0xD21hVwraJ8MEqrLURb_Gh5ZGVNkGb816v9N

Example 2

Browse a folder with ID 2290B1F709557ED1FAE557E51C4C7EA8 via an applink with ID LF8GlWy9l36I1V48n7iXZPDNUbK75xxygcS298ppn6YLptZy59P01e9KRLiE64tfNXH-ik4CH2c9HeFveF7qxAuQ== and access token CaqytKjXk5B86jTAcKX6nveZLB7P12AaDbsHQIonhIxUrJvcnE5Wgz4ZiJN0DGaqfpn8lyvkLfUMeZXHIbzufw==:

GET https://{host}:{port}/documents/wcc/api/v1.1/folders/2290B1F709557ED1FAE557E51C4C7EA8?dAppLinkID=LF8GlWy9l36I1V48n7iXZPDNUbK75xxygcS298ppn6YLptZy59P01e9KRLiE64tfNXH-ik4CH2c9HeFveF7qxAuQ==&dAppLinkAccessToken=CaqytKjXk5B86jTAcKX6nveZLB7P12AaDbsHQIonhIxUrJvcnE5Wgz4ZiJN0DGaqfpn8lyvkLfUMeZXHIbzufw==

Example 3

Update document metadata (xComments field) for a file with dDocName WCContent092800, an RW applink with ID LFLA84KEkLZq-t5Tnw95QH5mg_GsbRTy6m7WIUpXhf_iOYjUdgghwUEqGhPzCjifygPD0tACI3rlfc45FWq1FPzA== and access token uZsov0qXg94ZpPgHP_VymqTL-Ci2ZttHrqqrtBeyZyMtrXLk4xE6Di8mIZXdCFqRcZ9W40p0iC0fnn5cdMfOcA==:

PUT https://{host}:{port}/documents/wcc/api/v1.1/files/WCContent092800?dAppLinkID=LFLA84KEkLZq-t5Tnw95QH5mg_GsbRTy6m7WIUpXhf_iOYjUdgghwUEqGhPzCjifygPD0tACI3rlfc45FWq1FPzA==&dAppLinkAccessToken=uZsov0qXg94ZpPgHP_VymqTL-Ci2ZttHrqqrtBeyZyMtrXLk4xE6Di8mIZXdCFqRcZ9W40p0iC0fnn5cdMfOcA== with a multi-part form that contains metadataValues with Json content like { “xComments”: “updated comments” }

About Component Configuration

The SharedLinks component provides the following configurations:

Name Description Default Max
PublicLinkAccessCodeRequired Whether public link access code is required false N/A
PublicLinkDefaultExpirationDateInDays Default public link expiration date in days 30 N/A
PublicLinkMaxExpirationDateInDays Maximum public link expiration date in days 180 N/A
PublicLinkPerItemLimit Maximum number of public links allowed per folder/file 25 100
PublicLinkMaxUploadSizeInMB Maximum file size (in MB) allowed to upload via public link 100 250
AppLinkAccessTokenExpDateInMinutes Applink access token expiration date in minutes 15 90
AppLinkRefreshTokenExpDateInHours Applink refresh token expiration date in hours 24 96