openapi: 3.0.0
info:
title: Secret Server Rest Activations FolderPermissions API
description: REST API documentation for Secret Server. This document describes how to use the REST API. All requests require an authentication token; please see the authentication document for more information. The Swagger specification for this API is also available.
termsOfService: https://delinea.com/eula
contact:
name: Support
url: https://delinea.com
version: 11.7.2
servers:
- url: /SecretServer/api
security:
- BearerToken: []
tags:
- name: FolderPermissions
description: View and maintain secret folder permissions
paths:
/v1/folder-permissions/{id}:
get:
tags:
- FolderPermissions
summary: Get Folder Permission
description: Get a single folder permission by ID
operationId: FolderPermissionsService_Get
parameters:
- name: includeInactive
in: query
description: Whether to include inactive folder permissions in the results
required: false
schema:
type: boolean
- name: id
in: path
description: Folder permission ID
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Folder permission object
content:
application/json:
schema:
$ref: '#/components/schemas/FolderPermissionModel'
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestResponse'
'403':
description: Authentication failed
content:
application/json:
schema:
$ref: '#/components/schemas/AuthenticationFailedResponse'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerErrorResponse'
deprecated: false
put:
tags:
- FolderPermissions
summary: Update Folder Permission
description: Update a single folder permission by ID
operationId: FolderPermissionsService_Update
parameters:
- name: id
in: path
description: Folder permission ID
required: true
schema:
type: integer
format: int32
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/FolderPermissionUpdateArgs'
description: Folder permission update options
responses:
'200':
description: Folder permission object
content:
application/json:
schema:
$ref: '#/components/schemas/FolderPermissionModel'
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestResponse'
'403':
description: Authentication failed
content:
application/json:
schema:
$ref: '#/components/schemas/AuthenticationFailedResponse'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerErrorResponse'
deprecated: false
delete:
tags:
- FolderPermissions
summary: Delete Folder Permission
description: Delete a folder permission by ID
operationId: FolderPermissionsService_Delete
parameters:
- name: breakInheritance
in: query
description: Include to remove permission inheritance
required: false
schema:
type: boolean
- name: id
in: path
description: Folder permission ID
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Object deletion result
content:
application/json:
schema:
$ref: '#/components/schemas/DeletedModel'
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestResponse'
'403':
description: Authentication failed
content:
application/json:
schema:
$ref: '#/components/schemas/AuthenticationFailedResponse'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerErrorResponse'
deprecated: false
/v1/folder-permissions:
get:
tags:
- FolderPermissions
summary: Search Folder Permissions
description: Search, filter, sort, and page folder permissions
operationId: FolderPermissionsService_Search
parameters:
- name: filter.domainId
in: query
description: Only return users in this domain. Pass -1 to return local accounts. Null or empty will not filter by domain.
required: false
x-nullable: true
schema:
type: integer
format: int32
- name: filter.excludeEditors
in: query
description: If populated with true, will filter editors from results. Will default to false
required: false
x-nullable: true
schema:
type: boolean
- name: filter.excludeOwners
in: query
description: If populated with true, will filter owners from results. Will default to false
required: false
x-nullable: true
schema:
type: boolean
- name: filter.excludeViewers
in: query
description: If populated with true, will filter viewers from results. Will default to false
required: false
x-nullable: true
schema:
type: boolean
- name: filter.folderId
in: query
description: Limit results to a certain folder
required: false
x-nullable: true
schema:
type: integer
format: int32
- name: filter.groupId
in: query
description: Limit results to a certain group
required: false
x-nullable: true
schema:
type: integer
format: int32
- name: filter.searchText
in: query
description: Will only return results where the user or group name contains this text
required: false
schema:
type: string
- name: filter.userId
in: query
description: Limit results to a certain user
required: false
x-nullable: true
schema:
type: integer
format: int32
- name: skip
in: query
description: Number of records to skip before taking results
required: false
schema:
type: integer
format: int32
- name: sortBy[0].direction
in: query
description: Sort direction
required: false
schema:
type: string
- name: sortBy[0].name
in: query
description: Sort field name
required: false
schema:
type: string
- name: sortBy[0].priority
in: query
description: Priority index. Sorts with lower values are executed earlier
required: false
schema:
type: integer
format: int32
- name: take
in: query
description: Maximum number of records to include in results
required: false
schema:
type: integer
format: int32
responses:
'200':
description: Folder permission search result object
content:
application/json:
schema:
$ref: '#/components/schemas/PagingOfFolderPermissionSummary'
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestResponse'
'403':
description: Authentication failed
content:
application/json:
schema:
$ref: '#/components/schemas/AuthenticationFailedResponse'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerErrorResponse'
deprecated: false
post:
tags:
- FolderPermissions
summary: Create Folder Permission
description: Create a new folder permission
operationId: FolderPermissionsService_Create
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/FolderPermissionCreateArgs'
description: Folder permission creation options
responses:
'200':
description: Folder permission object
content:
application/json:
schema:
$ref: '#/components/schemas/FolderPermissionModel'
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestResponse'
'403':
description: Authentication failed
content:
application/json:
schema:
$ref: '#/components/schemas/AuthenticationFailedResponse'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerErrorResponse'
deprecated: false
/v1/folder-permissions/stub:
get:
tags:
- FolderPermissions
summary: Get Folder Permission Stub
description: Return the default values for a new folder permission
operationId: FolderPermissionsService_Stub
parameters:
- name: folderId
in: query
description: Folder for which to generate a permission stub
required: true
schema:
type: integer
format: int32
minimum: 1
responses:
'200':
description: Folder permission object
content:
application/json:
schema:
$ref: '#/components/schemas/FolderPermissionModel'
'400':
description: Bad request
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestResponse'
'403':
description: Authentication failed
content:
application/json:
schema:
$ref: '#/components/schemas/AuthenticationFailedResponse'
'500':
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/InternalServerErrorResponse'
deprecated: false
components:
schemas:
Sort:
description: Sort options. Multiple sort options can be provided in the query string.
required:
- name
- direction
properties:
direction:
$ref: '#/components/schemas/SortDirection'
name:
description: Sort field name
type: string
priority:
description: Priority index. Sorts with lower values are executed earlier
type: integer
format: int32
type: object
BadRequestResponse:
description: Response object for invalid requests
required:
- message
properties:
message:
description: Error message
type: string
messageDetail:
description: Error message detail
type: string
errorCode:
description: Error message code
type: string
modelState:
description: An object describing validation errors
type: object
type: object
FolderPermissionUpdateArgs:
description: Folder permission update options
required:
- id
- folderId
- folderAccessRoleName
properties:
breakInheritance:
description: Allow updating of inherited permissions
type: boolean
default: true
folderAccessRoleName:
description: Role to grant on the folder (View, Edit, Add Secret, Owner)
type: string
folderId:
description: Folder ID
type: integer
format: int32
id:
description: Folder permission ID. Must match ID in path
type: integer
format: int32
secretAccessRoleName:
description: Role to grant on secrets in the folder (View, Edit, List, Owner, None)
type: string
type: object
DeletedModel:
description: Information about an object that was deleted
properties:
id:
description: ID of the deleted object
type: integer
format: int32
objectType:
description: Type of the deleted object
type: string
responseCodes:
description: List of response codes from the delete operation
items:
type: string
type: array
type: object
SortDirection:
description: Sort direction
properties: {}
type: string
enum:
- None
- Asc
- Desc
PagingOfFolderPermissionSummary:
description: Specify paging and sorting options for querying records and returning results
properties:
batchCount:
description: Number of result batches available with current query options
type: integer
format: int32
currentPage:
description: Index of current result page
type: integer
format: int32
hasNext:
description: Whether there are any results in additional pages
type: boolean
hasPrev:
description: Whether there are any results in previous pages
type: boolean
nextSkip:
description: Correct value of 'skip' for the next page of results
type: integer
format: int32
pageCount:
description: Number of result pages available with current query options
type: integer
format: int32
prevSkip:
description: Correct value of 'skip' for the previous page of results
type: integer
format: int32
records:
description: Query results
items:
$ref: '#/components/schemas/FolderPermissionSummary'
type: array
severity:
$ref: '#/components/schemas/Severity'
skip:
description: Number of records to skip before taking results
type: integer
format: int32
sortBy:
description: List of sort properties
items:
$ref: '#/components/schemas/Sort'
type: array
success:
description: Whether the query executed successfully
type: boolean
take:
description: Maximum number of records to include in results
type: integer
format: int32
total:
description: Total number of results available
type: integer
format: int32
type: object
FolderPermissionModel:
description: Folder permission
properties:
folderAccessRoleId:
description: Role ID granted on the folder
type: integer
format: int32
folderAccessRoleName:
description: Role name granted on the folder
type: string
folderId:
description: Folder ID
type: integer
format: int32
groupId:
description: Group ID having permissions on the folder
type: integer
format: int32
groupName:
description: Group name having permissions on the folder
type: string
id:
description: Folder permission ID
type: integer
format: int32
knownAs:
description: KnownAs
type: string
secretAccessRoleId:
description: Role ID granted on secrets in the folder
type: integer
format: int32
nullable: true
secretAccessRoleName:
description: Role name granted on secrets in the folder
type: string
userId:
description: User ID having permissions on the folder
type: integer
format: int32
userName:
description: User name having permissions on the folder
type: string
type: object
FolderPermissionCreateArgs:
description: FolderPermissionCreateArgs
properties:
breakInheritance:
description: Allow updating of inherited permissions
type: boolean
default: true
folderAccessRoleName:
description: Role to grant on the folder (View, Edit, Add Secret, Owner)
type: string
folderId:
description: Folder on which to grant permissions
type: integer
format: int32
groupId:
description: Group to receive permissions
type: integer
format: int32
nullable: true
secretAccessRoleName:
description: Role to grant on secrets in the folder (View, Edit, List, Owner, None)
type: string
userId:
description: User to receive permissions
type: integer
format: int32
nullable: true
type: object
Severity:
description: Error severity level
properties: {}
type: string
enum:
- None
- Retry
- Warn
- Critical
- Fatal
InternalServerErrorResponse:
description: Response object for internal server errors
required:
- message
- exceptionMessage
- exceptionType
- stackTrace
properties:
message:
description: Error message
type: string
exceptionMessage:
description: Error message from exception
type: string
exceptionType:
description: Exception type
type: string
stackTrace:
description: Exception stack trace
type: string
type: object
AuthenticationFailedResponse:
description: Response object for authentication failures
required:
- message
properties:
message:
description: Error message
type: string
type: object
FolderPermissionSummary:
description: Folder permission summary
properties:
domainName:
description: The domain of this user or group
type: string
folderAccessRoleId:
description: Role ID granted on the folder
type: integer
format: int32
folderAccessRoleName:
description: Role name granted on the folder
type: string
folderId:
description: Folder ID
type: integer
format: int32
groupId:
description: Group ID having permissions on the folder
type: integer
format: int32
nullable: true
groupName:
description: Group name having permissions on the folder
type: string
id:
description: Folder permission ID
type: integer
format: int32
knownAs:
description: A qualified name for the item including domain if available
type: string
secretAccessRoleId:
description: Role ID granted on secrets in the folder
type: integer
format: int32
nullable: true
secretAccessRoleName:
description: Role name granted on secrets in the folder
type: string
userId:
description: User ID having permissions on the folder
type: integer
format: int32
nullable: true
userName:
description: User name having permissions on the folder
type: string
type: object
securitySchemes:
BearerToken:
type: apiKey
description: 'Perform a POST request to `/oauth2/token`. It should include three form data parameters - `username`, `password`, and `grant_type`.The `grant_type` parameter should always have the value `password`.The access token returned should be included in the header of subsequent requests, like ''Authorization: Bearer token''. The token remains valid for a time period returned in the ''expires_in'' property (in seconds). For details, see the token request documentation.'
name: Authorization
in: header