OpenAPI Specification
openapi: 3.0.0
info:
title: Secret Server Rest Activations Metadata 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: Metadata
description: MetadataController
paths:
/v1/metadata/{itemType}/{itemId}/{metadataItemDataId}:
delete:
tags:
- Metadata
summary: Delete Metadata
description: Deletes the metadata value and all history for that item
operationId: MetadataService_DeleteMetadata
parameters:
- name: itemId
in: path
description: The item ID of the entity to which this metadata is associated
required: true
schema:
type: integer
format: int32
- name: itemType
in: path
description: The type of entity to which this metadata is associated
required: true
schema:
type: string
- name: metadataItemDataId
in: path
description: The sequence ID of the metadata record to delete
required: true
schema:
type: integer
format: int32
responses:
'200':
description: Success response
content:
application/json:
schema:
$ref: '#/components/schemas/MetadataDeleteResponse'
'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/metadata:
get:
tags:
- Metadata
summary: Search metadata
description: Search, filter, sort, and page metadata
operationId: MetadataService_SearchMetadata
parameters:
- name: filter.itemId
in: query
description: Will only return metadata for this entity ID. MetadataType will also be required.
required: false
schema:
type: integer
format: int32
- name: filter.metaDataFieldId
in: query
description: Return a specific metadata field
required: false
x-nullable: true
schema:
type: integer
format: int32
- name: filter.metadataType
in: query
description: Will only return metadata for this type. ItemId will also be required.
required: false
schema:
type: string
- 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: Metadata search results
content:
application/json:
schema:
$ref: '#/components/schemas/PagingOfMetadataSummaryModel'
'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/metadata/history:
get:
tags:
- Metadata
summary: Search metadata history
description: Search, filter, sort, and page metadata history
operationId: MetadataService_SearchMetadataHistory
parameters:
- name: isExporting
in: query
description: isExporting
required: false
schema:
type: boolean
- name: filter.endDate
in: query
description: Only return history metadata values that were entered before this time
required: false
x-nullable: true
schema:
type: string
format: date-time
- name: filter.itemId
in: query
description: Will only return metadata for this entity ID. MetadataType will also be required.
required: false
schema:
type: integer
format: int32
- name: filter.metaDataFieldId
in: query
description: Return a specific metadata field
required: false
x-nullable: true
schema:
type: integer
format: int32
- name: filter.metadataType
in: query
description: Will only return metadata for this type. ItemId will also be required.
required: false
schema:
type: string
- name: filter.startDate
in: query
description: Only return history metadata values that were entered after this time
required: false
x-nullable: true
schema:
type: string
format: date-time
- 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: Metadata search history results
content:
application/json:
schema:
$ref: '#/components/schemas/PagingOfMetadataHistorySummaryModel'
'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/metadata/field-sections:
get:
tags:
- Metadata
summary: Get metadata field sections
description: Return all of the metadata sections that have metadata for a specific item.
operationId: MetadataService_GetFieldSections
parameters:
- name: filter.itemId
in: query
description: Return sections that have metadata for this specific item id. MetadataType will be required.
required: false
x-nullable: true
schema:
type: integer
format: int32
- name: filter.metadataSectionFilterId
in: query
description: Return a specific Metadata Section Field ID.
required: false
x-nullable: true
schema:
type: integer
format: int32
- name: filter.metadataType
in: query
description: Only return metadata for a specific type of item. Will also required an ItemId
required: false
x-nullable: true
schema:
type: string
- 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: Metadata Sections that match criteria.
content:
application/json:
schema:
$ref: '#/components/schemas/PagingOfMetadataFieldSectionSummaryModel'
'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/metadata/fields:
get:
tags:
- Metadata
summary: Get metadata fields
description: Returns a list of all of the metadata sections and fields that exist
operationId: MetadataService_GetFields
responses:
'200':
description: Metadata Fields that exist
content:
application/json:
schema:
$ref: '#/components/schemas/PagingOfMetadataFieldSummaryModel'
'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/metadata/{itemType}/{itemId}:
post:
tags:
- Metadata
summary: Create Metadata
description: Create or update a metadata field for an item
operationId: MetadataService_CreateMetadata
parameters:
- name: itemId
in: path
description: The item ID of the entity to which this metadata is associated
required: true
schema:
type: integer
format: int32
- name: itemType
in: path
description: The type of entity to which this metadata is associated
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/MetadataCreateArgs'
description: args
responses:
'200':
description: Newly created or updated MetadataModel
content:
application/json:
schema:
$ref: '#/components/schemas/MetadataModel'
'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
patch:
tags:
- Metadata
summary: Update or Create Metadata
description: Update or create a metadata field for an item
operationId: MetadataService_UpdateMetadata
parameters:
- name: itemId
in: path
description: The item ID of the entity to which this metadata is associated
required: true
schema:
type: integer
format: int32
- name: itemType
in: path
description: The type of entity to which this metadata is associated
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/MetadataUpdateArgs'
description: args
responses:
'200':
description: Newly created or updated MetadataModel
content:
application/json:
schema:
$ref: '#/components/schemas/MetadataModel'
'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/metadata/field-sections/{fieldSectionId}:
patch:
tags:
- Metadata
summary: Update a metadata field section
description: Update a metadata field section
operationId: MetadataService_UpdateMetadataFieldSection
parameters:
- name: fieldSectionId
in: path
description: The section ID of the field to which this metadata is associated
required: true
schema:
type: integer
format: int32
- name: itemId
in: query
description: The item ID of the entity to which this metadata is associated
required: false
x-nullable: true
schema:
type: integer
format: int32
- name: itemType
in: query
description: The type of entity to which this metadata is associated
required: false
x-nullable: true
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/MetadataFieldSectionUpdateArgs'
description: args
responses:
'200':
description: Updated metadata field section
content:
application/json:
schema:
$ref: '#/components/schemas/MetadataFieldSectionSummaryModel'
'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
UpdateFieldValueOfBoolean:
description: Active
properties:
dirty:
description: Dirty
type: boolean
value:
description: Value
type: boolean
type: object
MetadataType:
description: The types of entities that metadata can be associated to
properties: {}
type: string
enum:
- User
- Secret
- Folder
- Group
SortDirection:
description: Sort direction
properties: {}
type: string
enum:
- None
- Asc
- Desc
Severity:
description: Error severity level
properties: {}
type: string
enum:
- None
- Retry
- Warn
- Critical
- Fatal
UpdateFieldValueOfOptionalDateTime:
description: Update when the pinned folder was last viewed
properties:
dirty:
description: Dirty
type: boolean
value:
description: Value
type: string
format: date-time
nullable: true
type: object
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
PagingOfMetadataFieldSummaryModel:
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/MetadataFieldSummaryModel'
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
PagingOfMetadataHistorySummaryModel:
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/MetadataHistorySummaryModel'
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
UpdateFieldValueOfOptionalInt32:
description: The minimum length required for local user passwords
properties:
dirty:
description: Dirty
type: boolean
value:
description: Value
type: integer
format: int32
nullable: true
type: object
MetadataUpdateModel:
description: Metadata item to update
properties:
containsPersonalInformation:
$ref: '#/components/schemas/UpdateFieldValueOfBoolean'
metadataItemDataId:
description: The sequence ID for the metadata field
type: integer
format: int32
valueBit:
$ref: '#/components/schemas/UpdateFieldValueOfOptionalBoolean'
valueDateTime:
$ref: '#/components/schemas/UpdateFieldValueOfOptionalDateTime'
valueInt:
$ref: '#/components/schemas/UpdateFieldValueOfOptionalInt32'
valueNumber:
$ref: '#/components/schemas/UpdateFieldValueOfOptionalDouble'
valueString:
$ref: '#/components/schemas/UpdateFieldValueOfString'
type: object
PagingOfMetadataSummaryModel:
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/MetadataSummaryModel'
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
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
MetadataSummaryModel:
description: Query results
properties:
containsPersonalInformation:
description: When this is set to true, the metadata will be obfuscated during export
type: boolean
createDateTime:
description: When the field value was created
type: string
format: date-time
createUserId:
description: The user id of who entered the field value
type: integer
format: int32
createUserName:
description: Who entered the field value
type: string
itemId:
description: The ID of the item to which this metadata is associated
type: integer
format: int32
metadataFieldDataType:
$ref: '#/components/schemas/MetadataFieldDataType'
metadataFieldId:
description: The metadata field id
type: integer
format: int32
metadataFieldName:
description: The metadata field name
type: string
metadataFieldSectionId:
description: The Metadata section ID
type: integer
format: int32
metadataFieldSectionName:
description: The metadata section name
type: string
metadataFieldTypeName:
description: Not currently populated, see MetadataFieldDataType
type: string
metadataItemDataId:
description: The sequence id for this specific metadata field
type: integer
format: int32
metadataType:
$ref: '#/components/schemas/MetadataType'
metadataTypeName:
description: Not currently populated, see MetadataType
type: string
sortOrder:
description: The order in which to sort the metadata fields. This is currently not utilized.
type: integer
format: int32
nullable: true
valueBit:
description: When this metadata field is a boolean this will be the value
type: boolean
nullable: true
valueDateTime:
description: When this metadata field is a datetime this will be the value
type: string
format: date-time
nullable: true
valueInt:
description: When this metadata field is a user this will be the user id
type: integer
format: int32
nullable: true
valueNumber:
description: When this metadata field is a number this will be the value
type: number
format: double
nullable: true
valueString:
description: When this metadata field is a string this will be the value
type: string
valueUserDisplayName:
description: When this metadata field is a user this will be the user display name
type: string
type: object
MetadataCreateArgs:
description: Create metadata args
properties:
data:
$ref: '#/components/schemas/MetadataCreateModel'
type: object
MetadataFieldSectionActionType:
description: Specific actions a user can take on metadata sections
properties: {}
type: string
enum:
- EditSection
- AddField
- EditItem
- DeleteItem
UpdateFieldValueOfOptionalBoolean:
description: Use RADIUS Username for DUO
properties:
dirty:
description: Dirty
type: boolean
value:
description: Value
type: boolean
nullable: true
type: object
MetadataFieldSectionUpdateModel:
description: Model to update a metadata field section
properties:
metadataFieldSectionDescription:
$ref: '#/components/schemas/UpdateFieldValueOfString'
metadataFieldSectionName:
$ref: '#/components/schemas/UpdateFieldValueOfString'
metadataFieldSectionRequiresAdministerMetadata:
$ref: '#/components/schemas/UpdateFieldValueOfBoolean'
metadataFieldSectionRequiresEntityEdit:
$ref: '#/components/schemas/UpdateFieldValueOfBoolean'
type: object
MetadataFieldSummaryModel:
description: Metadata field summary
properties:
containsPersonalInformation:
description: When this is set to true, the metadata will be obfuscated during export
type: boolean
defaultSortOrder:
description: Not currently utilized but the sort order for the metadata
type: integer
format: int32
nullable: true
fieldDataType:
$ref: '#/components/schemas/EntityMetadataFieldDataType'
metadataFieldId:
description: The sequence ID for this metadata field
type: integer
format: int32
nullable: true
metadataFieldName:
description: The name of this metadata field
type: string
metadataFieldSectionId:
description: The field section id that contains this field
type: integer
format: int32
nullable: true
metadataFieldSectionName:
description: The name of the field section
type: string
type: object
MetadataDeleteResponse:
description: Response message when deleting a metadata value
properties:
success:
description: Did the delete succeed
type: boolean
type: object
MetadataCreateModel:
description: Model to create a new metadata field value
properties:
containsPersonalInformation:
# --- truncated at 32 KB (46 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/delinea/refs/heads/main/openapi/delinea-metadata-api-openapi.yml