openapi: 3.0.0
info:
title: Secret Server Rest Activations Secrets 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 <a href="../OAuth/">authentication document</a> for more information. The <a href="swagger.json">Swagger specification</a> 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: Secrets
description: View and maintain Secrets
paths:
/v1/secrets/{id}:
put:
tags:
- Secrets
summary: Update Secret
description: Update a single secret by ID
operationId: SecretsService_UpdateSecret
parameters:
- name: autoCheckIn
in: query
description: Automatically check in a secret after finding or updating.
required: false
schema:
type: boolean
- name: autoCheckout
in: query
description: Automatically check out secret before finding or updating.
required: false
schema:
type: boolean
- name: autoComment
in: query
description: Leave a comment when checking in or out.
required: false
schema:
type: string
- name: forceCheckIn
in: query
description: If secret is checked out, then force a check in.
required: false
schema:
type: boolean
- name: id
in: path
description: Secret ID
required: true
schema:
type: integer
format: int32
- name: secretPath
in: query
description: A full path including folder and secret name can be passed as a query string parameter when the secret ID is set to 0. This will lookup the secret ID by path.
required: false
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SecretUpdateArgs'
description: Secret update options
responses:
'200':
description: Secret object
content:
application/json:
schema:
$ref: '#/components/schemas/SecretModel'
'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:
- Secrets
summary: Deactivate a Secret
description: A deactivated secret is hidden from users who do not have a role containing the View Inactive Secrets permission. Secret Server uses these "soft deletes" to maintain the audit history for all data. However, deactivated secrets are still accessible by administrators (like a permanent Recycle Bin) to ensure that audit history is maintained and to support recovery. A user must have the "View Inactive Secrets" permission in addition to Owner permission on a secret to access the secret View page for a deleted secret. To permanently remove all information on a secret, use the "Erase Secret" function.
operationId: SecretsService_Delete
parameters:
- name: autoCheckIn
in: query
description: Automatically check in a secret after finding or updating.
required: false
schema:
type: boolean
- name: autoCheckout
in: query
description: Automatically check out secret before finding or updating.
required: false
schema:
type: boolean
- name: autoComment
in: query
description: Leave a comment when checking in or out.
required: false
schema:
type: string
- name: forceCheckIn
in: query
description: If secret is checked out, then force a check in.
required: false
schema:
type: boolean
- name: id
in: path
description: Secret ID
required: true
schema:
type: integer
format: int32
- name: secretPath
in: query
description: A full path including folder and secret name can be passed as a query string parameter when the secret ID is set to 0. This will lookup the secret ID by path.
required: false
schema:
type: string
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/secrets/{id}/fields/{slug}/listdetails:
get:
tags:
- Secrets
summary: Get Secret List Field List Data
description: Get the lists associated to a secret list data field
operationId: SecretsService_GetListFieldListDefinitions
parameters:
- name: autoCheckIn
in: query
description: Automatically check in a secret after finding or updating.
required: false
schema:
type: boolean
- name: autoCheckout
in: query
description: Automatically check out secret before finding or updating.
required: false
schema:
type: boolean
- name: autoComment
in: query
description: Leave a comment when checking in or out.
required: false
schema:
type: string
- name: forceCheckIn
in: query
description: If secret is checked out, then force a check in.
required: false
schema:
type: boolean
- name: id
in: path
description: Secret ID
required: 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
- name: slug
in: path
description: The field slug name of the list field. This is the fieldSlugName property of the SecretField object. By default, it is the lower-case field name with all spaces replaced with dashes (-).
required: true
schema:
type: string
responses:
'200':
description: Combined summary of all lists assigned to the secret field.
content:
application/json:
schema:
$ref: '#/components/schemas/PagingOfCategorizedListSummary'
'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:
- Secrets
summary: Update Secret List Field List Data
description: Updates the lists associated to a secret list data field
operationId: SecretsService_UpdateListFieldListDefinitions
parameters:
- name: autoCheckIn
in: query
description: Automatically check in a secret after finding or updating.
required: false
schema:
type: boolean
- name: autoCheckout
in: query
description: Automatically check out secret before finding or updating.
required: false
schema:
type: boolean
- name: autoComment
in: query
description: Leave a comment when checking in or out.
required: false
schema:
type: string
- name: forceCheckIn
in: query
description: If secret is checked out, then force a check in.
required: false
schema:
type: boolean
- name: id
in: path
description: Secret ID
required: true
schema:
type: integer
format: int32
- name: slug
in: path
description: Secret field name
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/SecretListFieldListArgs'
description: Secret options
responses:
'200':
description: Combined summary of all lists assigned to the secret field.
content:
application/json:
schema:
$ref: '#/components/schemas/PagingOfCategorizedListSummary'
'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:
- Secrets
summary: Delete Secret List Field List Data
description: Deletes the lists associated to a secret list data field
operationId: SecretsService_DeleteListFieldListDefinitions
parameters:
- name: autoCheckIn
in: query
description: Automatically check in a secret after finding or updating.
required: false
schema:
type: boolean
- name: autoCheckout
in: query
description: Automatically check out secret before finding or updating.
required: false
schema:
type: boolean
- name: autoComment
in: query
description: Leave a comment when checking in or out.
required: false
schema:
type: string
- name: forceCheckIn
in: query
description: If secret is checked out, then force a check in.
required: false
schema:
type: boolean
- name: id
in: path
description: Secret ID
required: true
schema:
type: integer
format: int32
- name: listGuid
in: query
description: Secret options
required: false
schema:
type: string
format: uuid
- name: slug
in: path
description: Secret field name
required: true
schema:
type: string
responses:
'200':
description: Combined summary of all lists assigned to the secret field.
content:
application/json:
schema:
$ref: '#/components/schemas/PagingOfCategorizedListSummary'
'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
/v2/secrets:
get:
tags:
- Secrets
summary: Search Secrets
description: Search, filter, sort, and page secrets
operationId: SecretsService_SearchV2
parameters:
- name: filter.allowDoubleLocks
in: query
description: Whether to allow DoubleLocks as part of the search. True by default.
required: false
x-nullable: true
schema:
type: boolean
- name: filter.doNotCalculateTotal
in: query
description: Whether to return the total number of secrets matching the filters. False by default. If false, the total can be retrieved separately by calling /v1/secrets/search-total with the same arguments used in the search.
required: false
x-nullable: true
schema:
type: boolean
- name: filter.doubleLockId
in: query
description: Only include Secrets with this DoubleLock ID assigned in the search results.
required: false
x-nullable: true
schema:
type: integer
format: int32
- name: filter.extendedFields
in: query
description: An array of names of Secret Template fields to return. Only exposed fields can be returned. This parameter will be ignored if ExtFieldsCombined is sent.
required: false
explode: true
schema:
type: array
items:
type: string
- name: filter.extendedTypeId
in: query
description: If not null, return only secrets matching the specified extended mapping type as defined on the secret’s template.
required: false
x-nullable: true
schema:
type: integer
format: int32
- name: filter.extFieldsCombined
in: query
description: A comma delimited list of all extended fields to return. All fields must be marked as exposed for display. When populated this value will be used instead of ExtendedFields[]. Combining the fields decreases the size of the GET URL to avoid the 2048 character length restriction in IIS.
required: false
schema:
type: string
- name: filter.folderId
in: query
description: If not null, returns only secrets within the specified folder.
required: false
x-nullable: true
schema:
type: integer
format: int32
- name: filter.hasLauncher
in: query
description: Whether to only return secrets with or without launchers. If null, returns secrets regardless of whether they have launchers.
required: false
x-nullable: true
schema:
type: boolean
- name: filter.heartbeatStatus
in: query
description: If not null, returns only secrets with a certain heartbeat status.
required: false
x-nullable: true
schema:
type: string
- name: filter.includeActive
in: query
description: Whether to include active secrets in results (when excluded equals true).
required: false
x-nullable: true
schema:
type: boolean
- name: filter.includeInactive
in: query
description: Whether to include inactive secrets in results.
required: false
schema:
type: boolean
- name: filter.includeRestricted
in: query
description: Whether to include restricted secrets in results. Restricted secrets are secrets that are DoubleLocked, require approval, or require a comment to view.
required: false
schema:
type: boolean
- name: filter.includeSubFolders
in: query
description: Whether to include secrets in subfolders of the specified folder.
required: false
schema:
type: boolean
- name: filter.isExactMatch
in: query
description: Whether to do an exact match of the search text or a partial match. If an exact match, the entire secret name, field value, or list option in a list field must match the search text.
required: false
x-nullable: true
schema:
type: boolean
- name: filter.onlyCheckedOutSecrets
in: query
description: Whether to only return secrets that are or are not checked out. If null, returns secrets regardless of whether they are checked out.
required: false
x-nullable: true
schema:
type: boolean
- name: filter.onlyRPCEnabled
in: query
description: Whether to only include secrets whose template has Remote Password Changing enabled.
required: false
x-nullable: true
schema:
type: boolean
- name: filter.onlySecretsCheckedOutByUser
in: query
description: Whether to only return secrets that are or are not checked out by the querying user. If null, returns secrets regardless of whether they are checked out.
required: false
x-nullable: true
schema:
type: boolean
- name: filter.onlySharedWithMe
in: query
description: When true only Secrets where you are not the owner and the Secret was shared explicitly with your user id will be returned.
required: false
x-nullable: true
schema:
type: boolean
- name: filter.passwordTypeIds
in: query
description: If not null, returns only secrets matching the specified password types.
required: false
explode: true
schema:
type: array
items:
type: integer
- name: filter.permissionRequired
in: query
description: Specify whether to filter by List, View, Edit, or Owner permission. Default is List.
required: false
x-nullable: true
schema:
type: string
- name: filter.scope
in: query
description: Specify whether to search All, Recent, or Favorites
required: false
x-nullable: true
schema:
type: string
- name: filter.searchField
in: query
description: If set, restricts the search to only match secrets where the value of the field specified by name contains the search text.
required: false
schema:
type: string
- name: filter.searchFieldSlug
in: query
description: If set, restricts the search to only match secrets where the value of the field specified by the slug name contains the search text. This will override SearchField.
required: false
schema:
type: string
- name: filter.searchText
in: query
description: The text to match in the secret name, field value, or list field contents.
required: false
schema:
type: string
- name: filter.secretIds
in: query
description: If not null or empty, returns only secrets matching the specified secret ids.
required: false
explode: true
schema:
type: array
items:
type: integer
- name: filter.secretTemplateIds
in: query
description: If not null or empty, returns only secrets matching the specified templates.
required: false
explode: true
schema:
type: array
items:
type: integer
- name: filter.secretTemplateIdsCombined
in: query
description: A comma delimited list of all secret template IDs. When populated this value will be used instead of SecretTemplateIds[]. Combining the fields decreases the size of the GET URL to avoid the 2048 character length restriction in IIS.
required: false
schema:
type: string
- name: filter.siteId
in: query
description: If not null, returns only secrets within a the specified site.
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: Secret search result object
content:
application/json:
schema:
$ref: '#/components/schemas/PagingOfSecretSummary'
'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
/v2/secrets/search-total:
get:
tags:
- Secrets
summary: Get Secret Search Total
description: Gets the total number of secrets matching the secret search filter
operationId: SecretsService_SearchTotalV2
parameters:
- name: filter.allowDoubleLocks
in: query
description: Whether to allow DoubleLocks as part of the search. True by default.
required: false
x-nullable: true
schema:
type: boolean
- name: filter.doNotCalculateTotal
in: query
description: Whether to return the total number of secrets matching the filters. False by default. If false, the total can be retrieved separately by calling /v1/secrets/search-total with the same arguments used in the search.
required: false
x-nullable: true
schema:
type: boolean
- name: filter.doubleLockId
in: query
description: Only include Secrets with this DoubleLock ID assigned in the search results.
required: false
x-nullable: true
schema:
type: integer
format: int32
- name: filter.extendedFields
in: query
description: An array of names of Secret Template fields to return. Only exposed fields can be returned. This parameter will be ignored if ExtFieldsCombined is sent.
required: false
explode: true
schema:
type: array
items:
type: string
- name: filter.extendedTypeId
in: query
description: If not null, return only secrets matching the specified extended mapping type as defined on the secret’s template.
required: false
x-nullable: true
schema:
type: integer
format: int32
- name: filter.extFieldsCombined
in: query
description: A comma delimited list of all extended fields to return. All fields must be marked as exposed for display. When populated this value will be used instead of ExtendedFields[]. Combining the fields decreases the size of the GET URL to avoid the 2048 character length restriction in IIS.
required: false
schema:
type: string
- name: filter.folderId
in: query
description: If not null, returns only secrets within the specified folder.
required: false
x-nullable: true
schema:
type: integer
format: int32
- name: filter.hasLauncher
in: query
description: Whether to only return secrets with or without launchers. If null, returns secrets regardless of whether they have launchers.
required: false
x-nullable: true
schema:
type: boolean
- name: filter.heartbeatStatus
in: query
description: If not null, returns only secrets with a certain heartbeat status.
required: false
x-nullable: true
schema:
type: string
- name: filter.includeActive
in: query
description: Whether to include active secrets in results (when excluded equals true).
required: false
x-nullable: true
schema:
type: boolean
- name: filter.includeInactive
in: query
description: Whether to include inactive secrets in results.
required: false
schema:
type: boolean
- name: filter.includeRestricted
in: query
description: Whether to include restricted secrets in results. Restricted secrets are secrets that are DoubleLocked, require approval, or require a comment to view.
required: false
schema:
type: boolean
- name: filter.includeSubFolders
in: query
description: Whether to include secrets in subfolders of the specified folder.
required: false
schema:
type: boolean
- name: filter.isExactMatch
in: query
description: Whether to do an exact match of the search text or a partial match. If an exact match, the entire secret name, field value, or list option in a list field must match the search text.
required: false
x-nullable: true
schema:
type: boolean
- name: filter.onlyCheckedOutSecrets
in: query
description: Whether to only return secrets that are or are not checked out. If null, returns secrets regardless of whether they are checked out.
required: false
x-nullable: true
schema:
type: boolean
- name: filter.onlyRPCEnabled
in: query
description: Whether to only include secrets whose template has Remote Password Changing enabled.
required: false
x-nullable: true
schema:
type: boolean
- name: filter.onlySecretsCheckedOutByUser
in: query
description: Whether to only return secrets that are or are not checked out by the querying user. If null, returns secrets regardless of whether they are checked out.
required: false
x-nullable: true
schema:
type: boolean
- name: filter.onlySharedWithMe
in: query
description: When true only Secrets where you are not the owner and the Secret was shared explicitly with your user id will be returned.
required: false
x-nullable: true
schema:
type: boolean
- name: filter.passwordTypeIds
in: query
description: If not null, returns only secrets matching the specified password types.
required: false
explode: true
schema:
type: array
items:
type: integer
- name: filter.permissionRequired
in: query
description: Specify whether to filter by List, View, Edit, or Owner permission. Default is List.
required: false
x-nullable: true
schema:
type: string
- name: filter.scope
in: query
description: Specify whether to search All, Recent, or Favorites
required: false
x-nullable: true
schema:
type: string
- name: filter.searchField
in: query
description: If set, restricts the search to only match secrets where the value of the field specified by name contains the search text.
required: false
schema:
type: string
- name: filter.searchFieldSlug
in: query
description: If set, restricts the search to only match secrets where the value of the field specified by the slug name contains the search text. This will override SearchField.
required: false
schema:
type: string
- name: filter.searchText
in: query
description: The text to match in the secret name, field value, or list field contents.
required: false
schema:
type: string
- name: filter.secretIds
in: query
description: If not null or empty, returns only secrets matching the specified secret ids.
required: false
explode: true
schema:
type: array
items:
type: integer
- name: filter.secretTemplateIds
in: query
description: If not null or empty, returns only secrets matching the specified templates.
required: false
explode: true
schema:
type: array
items:
type: integer
- name: filter.secretTemplateIdsCombined
in: query
description: A comma delimited list of all secret template IDs. When populated this value will be used instead of SecretTemplateIds[]. Combining the fields decreases the size of the GET URL to avoid the 2048 character length restriction in IIS.
required: false
schema:
type: string
- name: filter.siteId
in: query
description: If not null, returns only secrets within a the specified site.
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: Integer number of matching secrets
content:
application/json:
schema:
description: Int32
type: integer
format: int32
'400':
# --- truncated at 32 KB (287 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/delinea/refs/heads/main/openapi/delinea-secrets-api-openapi.yml