Repository navigation
[FEATURE REQUEST] Sharing NG: Create new link #4955
Description
In case of an oCIS server, using the Graph API to create a link over any item. Similar to the link creation over an space.
1. Permission:
Same as share with user/groups. No specific permission for links, to show the + option (double check) in the Personal space. In custom folders, need to check if the user has permission over the space to create links. Permission is libre.graph/driveItem/permissions/create and could be used for any space.
2. Create Link
Link is conformed by:
- Name: optional. If empty
Unnamed Link(with translations). Max 255 chars - Permission: mandatory. Check screenshot below
- Password: depends on server parameters and capabilities (password policy)
OCIS_SHARING_PUBLIC_WRITEABLE_SHARE_MUST_HAVE_PASSWORD-> mandatory password forCan editandSecret file dropOCIS_SHARING_PUBLIC_SHARE_MUST_HAVE_PASSWORD-> mandatory password for everyone
- Expiration date: optional
As the spaces, password and expiration date will be displayed once one of the permissions is selected.
Permissions, to be hardcoded like the spaces
| Files | Folders |
|---|---|
![]() |
![]() |
3. Submission
POST https://<url>:9200/graph/v1beta1/drives/<drive-id>/items/<item-id>/createLink
with body
{
"password": "UX}H[8Uq/%'Mz-lq4HUin:e{|G46&Rttjt,WT7Y[u6&,",
"displayName": "A",
"type": "view",
"expirationDateTime": "2026-08-26T11:53:08.664Z"
}
type: view, edit, createOnly
"expirationDateTime" only if it was set.
password respecting password policy capabilities.
Response body like:
{
"createdDateTime": "2026-08-19T11:55:13.45495517Z",
"hasPassword": true,
"id": "IAfiUVqqpslHpNK",
"link": {
"@libre.graph.displayName": "",
"@libre.graph.quickLink": false,
"preventsDownload": false,
"type": "edit",
"webUrl": "https://<url>:9200/s/ioRkSIBBVDTKzxy"
}
}
Link id will be used for editing and deleting the link
4. Link
In every row, the chain icon should open the sharing link, like in space management.
TASKS
- Research (if needed)
- Create branch feature/create_public_link_sharing_ng
- Development tasks
- Show
+based on permissions - Show the screen for creating a public link
- Implement methods and operations for creating a link
- Implement unit tests (if needed)
- Show
- Code review and apply changes requested
- Design test plan
- QA
- Merge branch feature/create_public_link_sharing_ng into master


Activity
jesmrec commentedon Oct 14, 2026
Problem
The Sharing NG flow does not allow users to create new public links for files and folders from the Android client. When a user opens the sharing panel, the PUBLIC LINKS section is read-only: existing links are listed but there is no way to add a new one. Users must use another client (e.g. the web app) to create links.
Desired behavior
When a user opens the sharing panel for a file or folder and holds the required permission, a + button is shown in the PUBLIC LINKS section header. Tapping it opens a creation dialog where the user configures the link name, permission type, password and expiration date. On confirmation, the link is created on the server and immediately appears in the PUBLIC LINKS list. The chain icon on the new entry allows sharing the link URL through the Android share sheet.
User stories
Constraints
Acceptance criteria
Can viewandCan editfor files.Can view,Can edit, andSecret file drop for folders.Out of scope
Assumptions
Can editorSecret file drop.Implementation notes