Folders
Discover how Pleasant Password Server will enhance KeePass for business
GET /api/v5/rest/folders/root
This endpoint is used to get the root folders unique identifier.
Example Request
http://localhost:10000/api/v5/rest/folders/root
Example Result
HTTP 200 "c04f874b-90f7-4b33-97d0-a92e011fb712"
GET /api/v5/rest/folders
This endpoint is used to get the entire tree that is visible to the user.
Example Request
http://localhost:10000/api/v5/rest/folders
Example Result
HTTP 200 { "CustomUserFields": {}, "CustomApplicationFields": {}, "Children": [ { "CustomUserFields": {}, "CustomApplicationFields": {}, "Children": [], "Credentials": [], "Tags": [], "HasModifyEntriesAccess": true, "HasViewEntryContentsAccess": true, "CommentPrompts": { "AskForCommentOnViewPassword": false, "AskForCommentOnViewOffline": false, "AskForCommentOnModifyEntries": false, "AskForCommentOnMoveEntries": false, "AskForCommentOnMoveFolders": false, "AskForCommentOnModifyFolders": false }, "Id": "1a636445-1a89-450e-96af-53e5efd9753d", "Name": "Updated Group Name 4", "ParentId": "c04f874b-90f7-4b33-97d0-a92e011fb712", "Notes": null, "Created": "2018-08-08T10:47:09-06:00", "Modified": "2018-08-08T12:57:59-06:00", "Expires": null } ], "Credentials": [ { "CustomUserFields": {}, "CustomApplicationFields": {}, "Tags": [], "HasModifyEntriesAccess": true, "HasViewEntryContentsAccess": true, "CommentPrompts": { "AskForCommentOnViewPassword": false, "AskForCommentOnViewOffline": false, "AskForCommentOnModifyEntries": false, "AskForCommentOnMoveEntries": false, "AskForCommentOnMoveFolders": false, "AskForCommentOnModifyFolders": false }, "Id": "13caaa57-2186-467e-b107-bc29f8c3533e", "Name": "Full Updated", "Username": "ABCD", "Password": null, "Url": "", "Notes": "", "GroupId": "c04f874b-90f7-4b33-97d0-a92e011fb712", "Created": "2018-08-08T09:15:17-06:00", "Modified": "2018-08-09T09:03:54-06:00", "Expires": null } ], "Tags": [], "HasModifyEntriesAccess": true, "HasViewEntryContentsAccess": true, "CommentPrompts": { "AskForCommentOnViewPassword": false, "AskForCommentOnViewOffline": false, "AskForCommentOnModifyEntries": false, "AskForCommentOnMoveEntries": false, "AskForCommentOnMoveFolders": false, "AskForCommentOnModifyFolders": false }, "Id": "c04f874b-90f7-4b33-97d0-a92e011fb712", "Name": "Root", "ParentId": "00000000-0000-0000-0000-000000000000", "Notes": null, "Created": "2018-07-31T11:27:32-06:00", "Modified": "2018-07-31T11:27:32-06:00", "Expires": null }
GET /api/v5/rest/folders/{folderId:guid}
This endpoint is used to get a folder, its entries and sub-folders and entries below it. There is an optional parameter you can set using the query string for the folder recursion level: Default value is 1.
Example Request
http://localhost:10000/api/v5/rest/folders/c04f874b-90f7-4b33-97d0-a92e011fb712?recurseLevel=0
Example Result
HTTP 200 { "CustomUserFields": {}, "CustomApplicationFields": {}, "Children": [], "Credentials": [ { "CustomUserFields": {}, "CustomApplicationFields": {}, "Tags": [], "HasModifyEntriesAccess": true, "HasViewEntryContentsAccess": true, "CommentPrompts": { "AskForCommentOnViewPassword": false, "AskForCommentOnViewOffline": false, "AskForCommentOnModifyEntries": false, "AskForCommentOnMoveEntries": false, "AskForCommentOnMoveFolders": false, "AskForCommentOnModifyFolders": false }, "Id": "13caaa57-2186-467e-b107-bc29f8c3533e", "Name": "Full Updated", "Username": "ABCD", "Password": null, "Url": "", "Notes": "", "GroupId": "c04f874b-90f7-4b33-97d0-a92e011fb712", "Created": "2018-08-08T09:15:17-06:00", "Modified": "2018-08-09T09:03:54-06:00", "Expires": null } ], "Tags": [], "HasModifyEntriesAccess": true, "HasViewEntryContentsAccess": true, "CommentPrompts": { "AskForCommentOnViewPassword": false, "AskForCommentOnViewOffline": false, "AskForCommentOnModifyEntries": false, "AskForCommentOnMoveEntries": false, "AskForCommentOnMoveFolders": false, "AskForCommentOnModifyFolders": false }, "Id": "c04f874b-90f7-4b33-97d0-a92e011fb712", "Name": "Root", "ParentId": "00000000-0000-0000-0000-000000000000", "Notes": null, "Created": "2018-07-31T11:27:32-06:00", "Modified": "2018-07-31T11:27:32-06:00", "Expires": null }
POST /api/v5/rest/folders
This endpoint is used to add a folder to the system.
Example Request
http://localhost:10000/api/v5/rest/folders/ { "CustomUserFields": {}, "CustomApplicationFields": {}, "Children": [], "Credentials": [], "Tags": [], "Name": "New", "ParentId": "c04f874b-90f7-4b33-97d0-a92e011fb712", "Notes": null, "Expires": null }
Example Result
HTTP 200 "d599dd2c-f8f2-4638-9091-5ae66d8962bd"
PATCH /api/v5/rest/folders/{folderId:guid}
Example Request
http://localhost:10000/api/v5/rest/folders/1a636445-1a89-450e-96af-53e5efd9753d { "Name": "Updated Group Name" }
Example Result
HTTP 204
PUT /api/v5/rest/folders/{folderId:guid}
This endpoint is used for making full update to a single folder.
Example Request
http://localhost:10000/api/v5/rest/folders/1a636445-1a89-450e-96af-53e5efd9753d { "Item": { "CustomUserFields": {}, "CustomApplicationFields": {}, "Children": [], "Credentials": [], "Tags": [], "Id": "1cceb0dc-8b20-4b11-bf2d-556c9292496a", "Name": "Update", "ParentId": "c04f874b-90f7-4b33-97d0-a92e011fb712", "Notes": null, "Expires": null }, "Comment": "Usage Comment" }
Example Result
HTTP 204
DELETE /api/v5/rest/folders/{folderId:guid}
This endpoint is used for both archiving and deletion of an folder. This option is set in the Action property of the request body: "Archive" or "Delete".
Example Archive Request
http://localhost:10000/api/v5/rest/Folders/d599dd2c-f8f2-4638-9091-5ae66d8962bd { "Action": "Archive", "Comment": "Usage Comment" }
Example Archive Result
HTTP 204
Example Delete Request
http://localhost:10000/api/v5/rest/Folders/d599dd2c-f8f2-4638-9091-5ae66d8962bd { "Action": "Delete", "Comment": "Usage Comment" }
Example Delete Result
HTTP 204
**The routes containing "entries" or "folders" can be substituted with "credential" and "credentialgroup" respectively. this is to allow reverse compability of the API for existing clients.