Azure Key Vault Secrets API

Operations for securely storing and managing secrets such as passwords, connection strings, and API keys.

Documentation

Specifications

Schemas & Data

📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-secret-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-key-bundle-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-key-create-parameters-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-key-item-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-key-list-result-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-key-operation-result-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-key-operations-parameters-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-key-sign-parameters-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-key-update-parameters-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-key-verify-parameters-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-key-verify-result-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-key-attributes-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-key-properties-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-key-release-policy-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-json-web-key-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-json-web-key-type-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-json-web-key-operation-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-json-web-key-curve-name-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-secret-bundle-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-secret-set-parameters-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-secret-update-parameters-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-secret-item-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-secret-list-result-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-secret-attributes-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-secret-properties-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-secret-restore-parameters-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-backup-secret-result-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-certificate-bundle-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-certificate-create-parameters-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-certificate-import-parameters-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-certificate-update-parameters-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-certificate-item-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-certificate-list-result-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-certificate-attributes-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-certificate-operation-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-certificate-policy-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-issuer-parameters-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-lifetime-action-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-subject-alternative-names-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-x509-certificate-properties-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-deleted-key-bundle-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-deleted-secret-bundle-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-deleted-certificate-bundle-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-deletion-recovery-level-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-error-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/microsoft-azure-key-vault/refs/heads/main/json-schema/azure-key-vault-data-plane-key-vault-error-schema.json

Other Resources

OpenAPI Specification

microsoft-azure-key-vault-secrets-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Azure Key Vault Data Plane Certificates Secrets API
  description: The Azure Key Vault data plane API for performing operations on keys, secrets, and certificates within a specific Key Vault instance. This API enables cryptographic operations, secret management, and certificate lifecycle management. All operations require OAuth 2.0 authentication via Azure Active Directory.
  version: '7.4'
  contact:
    name: Microsoft Azure Support
    url: https://azure.microsoft.com/en-us/support/
  license:
    name: Microsoft API License
    url: https://learn.microsoft.com/en-us/legal/microsoft-apis/terms-of-use
  x-apisguru-categories:
  - security
  - cloud
  x-logo:
    url: https://azure.microsoft.com/svghandler/key-vault/
servers:
- url: https://{vaultName}.vault.azure.net
  description: Azure Key Vault data plane endpoint
  variables:
    vaultName:
      description: The name of the Key Vault instance
      default: myvault
security:
- OAuth2Auth: []
tags:
- name: Secrets
  description: Operations for securely storing and managing secrets such as passwords, connection strings, and API keys.
paths:
  /secrets/{secret-name}:
    put:
      operationId: Secrets_SetSecret
      summary: Azure Key Vault Set Secret
      description: Sets a secret in a specified key vault. The SET operation adds a secret to the Azure Key Vault. If the named secret already exists, Azure Key Vault creates a new version of that secret. Requires the secrets/set permission.
      tags:
      - Secrets
      parameters:
      - $ref: '#/components/parameters/SecretNameParameter'
      - $ref: '#/components/parameters/ApiVersionParameter'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SecretSetParameters'
      responses:
        '200':
          description: The request has succeeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SecretBundle'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/KeyVaultError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    delete:
      operationId: Secrets_DeleteSecret
      summary: Azure Key Vault Delete Secret
      description: Deletes a secret from a specified key vault. Requires the secrets/delete permission.
      tags:
      - Secrets
      parameters:
      - $ref: '#/components/parameters/SecretNameParameter'
      - $ref: '#/components/parameters/ApiVersionParameter'
      responses:
        '200':
          description: The request has succeeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/DeletedSecretBundle'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/KeyVaultError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /secrets/{secret-name}/{secret-version}:
    get:
      operationId: Secrets_GetSecret
      summary: Azure Key Vault Get Secret
      description: Get a specified secret from a given key vault. The GET operation is applicable to any secret stored in Azure Key Vault. Requires the secrets/get permission.
      tags:
      - Secrets
      parameters:
      - $ref: '#/components/parameters/SecretNameParameter'
      - $ref: '#/components/parameters/SecretVersionParameter'
      - $ref: '#/components/parameters/ApiVersionParameter'
      responses:
        '200':
          description: The request has succeeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SecretBundle'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/KeyVaultError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    patch:
      operationId: Secrets_UpdateSecret
      summary: Azure Key Vault Update Secret
      description: Updates the attributes associated with a specified secret in a given key vault. Requires the secrets/set permission.
      tags:
      - Secrets
      parameters:
      - $ref: '#/components/parameters/SecretNameParameter'
      - $ref: '#/components/parameters/SecretVersionParameter'
      - $ref: '#/components/parameters/ApiVersionParameter'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SecretUpdateParameters'
      responses:
        '200':
          description: The request has succeeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SecretBundle'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/KeyVaultError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /secrets:
    get:
      operationId: Secrets_GetSecrets
      summary: Azure Key Vault List Secrets
      description: List secrets in a specified key vault. The Get Secrets operation is applicable to the entire vault. Requires the secrets/list permission.
      tags:
      - Secrets
      parameters:
      - $ref: '#/components/parameters/ApiVersionParameter'
      - $ref: '#/components/parameters/MaxResultsParameter'
      responses:
        '200':
          description: The request has succeeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SecretListResult'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/KeyVaultError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /secrets/{secret-name}/versions:
    get:
      operationId: Secrets_GetSecretVersions
      summary: Azure Key Vault List Secret Versions
      description: List all versions of the specified secret. Requires the secrets/list permission.
      tags:
      - Secrets
      parameters:
      - $ref: '#/components/parameters/SecretNameParameter'
      - $ref: '#/components/parameters/ApiVersionParameter'
      - $ref: '#/components/parameters/MaxResultsParameter'
      responses:
        '200':
          description: The request has succeeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SecretListResult'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/KeyVaultError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /secrets/{secret-name}/backup:
    post:
      operationId: Secrets_BackupSecret
      summary: Azure Key Vault Backup Secret
      description: Requests that a backup of the specified secret be downloaded to the client. All versions of the secret will be downloaded. Requires the secrets/backup permission.
      tags:
      - Secrets
      parameters:
      - $ref: '#/components/parameters/SecretNameParameter'
      - $ref: '#/components/parameters/ApiVersionParameter'
      responses:
        '200':
          description: The request has succeeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BackupSecretResult'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/KeyVaultError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
  /secrets/restore:
    post:
      operationId: Secrets_RestoreSecret
      summary: Azure Key Vault Restore Secret
      description: Restores a backed up secret, and all its versions, to a vault. Requires the secrets/restore permission.
      tags:
      - Secrets
      parameters:
      - $ref: '#/components/parameters/ApiVersionParameter'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SecretRestoreParameters'
      responses:
        '200':
          description: The request has succeeded.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SecretBundle'
        default:
          description: An unexpected error response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/KeyVaultError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
components:
  schemas:
    SecretAttributes:
      type: object
      description: The secret management attributes.
      properties:
        enabled:
          type: boolean
          description: Determines whether the object is enabled.
          example: true
        nbf:
          type: integer
          format: unixtime
          description: Not before date in UTC.
          example: 10
        exp:
          type: integer
          format: unixtime
          description: Expiry date in UTC.
          example: 10
        created:
          type: integer
          format: unixtime
          description: Creation time in UTC.
          readOnly: true
          example: 10
        updated:
          type: integer
          format: unixtime
          description: Last updated time in UTC.
          readOnly: true
          example: 10
        recoveryLevel:
          $ref: '#/components/schemas/DeletionRecoveryLevel'
        recoverableDays:
          type: integer
          format: int32
          description: softDelete data retention days. Value should be >=7 and <=90 when softDelete enabled, otherwise 0.
          readOnly: true
          example: 10
    SecretBundle:
      type: object
      description: A secret consisting of a value, id and its attributes.
      properties:
        value:
          type: string
          description: The secret value.
          example: example_value
        id:
          type: string
          description: The secret id.
          example: abc123
        contentType:
          type: string
          description: The content type of the secret.
          example: example_value
        attributes:
          $ref: '#/components/schemas/SecretAttributes'
        tags:
          type: object
          additionalProperties:
            type: string
          description: Application specific metadata in the form of key-value pairs.
          example: example_value
        kid:
          type: string
          description: If this is a secret backing a KV certificate, then this field specifies the corresponding key backing the KV certificate.
          readOnly: true
          example: '500123'
        managed:
          type: boolean
          description: True if the secret's lifetime is managed by key vault. If this is a secret backing a certificate, then managed will be true.
          readOnly: true
          example: true
    SecretSetParameters:
      type: object
      description: The secret set parameters.
      required:
      - value
      properties:
        value:
          type: string
          description: The value of the secret.
          example: example_value
        tags:
          type: object
          additionalProperties:
            type: string
          description: Application specific metadata in the form of key-value pairs.
          example: example_value
        contentType:
          type: string
          description: Type of the secret value such as a password.
          example: example_value
        attributes:
          $ref: '#/components/schemas/SecretAttributes'
    BackupSecretResult:
      type: object
      description: The backup secret result, containing the backup blob.
      properties:
        value:
          type: string
          format: base64url
          description: The backup blob containing the backed up secret.
          readOnly: true
          example: example_value
    Error:
      type: object
      description: The key vault server error.
      properties:
        code:
          type: string
          description: The error code.
          readOnly: true
          example: example_value
        message:
          type: string
          description: The error message.
          readOnly: true
          example: example_value
        innererror:
          $ref: '#/components/schemas/Error'
      readOnly: true
    SecretItem:
      type: object
      description: The secret item containing secret metadata.
      properties:
        id:
          type: string
          description: Secret identifier.
          example: abc123
        attributes:
          $ref: '#/components/schemas/SecretAttributes'
        tags:
          type: object
          additionalProperties:
            type: string
          description: Application specific metadata in the form of key-value pairs.
          example: example_value
        contentType:
          type: string
          description: Type of the secret value such as a password.
          example: example_value
        managed:
          type: boolean
          description: True if the secret's lifetime is managed by key vault.
          readOnly: true
          example: true
    SecretListResult:
      type: object
      description: The secret list result.
      properties:
        value:
          type: array
          items:
            $ref: '#/components/schemas/SecretItem'
          description: A list of secrets.
          readOnly: true
          example: []
        nextLink:
          type: string
          description: The URL to get the next set of secrets.
          readOnly: true
          example: example_value
    SecretUpdateParameters:
      type: object
      description: The secret update parameters.
      properties:
        contentType:
          type: string
          description: Type of the secret value such as a password.
          example: example_value
        attributes:
          $ref: '#/components/schemas/SecretAttributes'
        tags:
          type: object
          additionalProperties:
            type: string
          description: Application specific metadata in the form of key-value pairs.
          example: example_value
    KeyVaultError:
      type: object
      description: The key vault error exception.
      properties:
        error:
          $ref: '#/components/schemas/Error'
      readOnly: true
    DeletionRecoveryLevel:
      type: string
      description: Reflects the deletion recovery level currently in effect for objects in the current vault.
      enum:
      - Purgeable
      - Recoverable+Purgeable
      - Recoverable
      - Recoverable+ProtectedSubscription
      - CustomizedRecoverable+Purgeable
      - CustomizedRecoverable
      - CustomizedRecoverable+ProtectedSubscription
    DeletedSecretBundle:
      type: object
      description: A deleted secret bundle consisting of its previous id, attributes, tags, and deletion information.
      allOf:
      - $ref: '#/components/schemas/SecretBundle'
      properties:
        recoveryId:
          type: string
          description: The url of the recovery object, used to identify and recover the deleted secret.
          example: '500123'
        scheduledPurgeDate:
          type: integer
          format: unixtime
          description: The time when the secret is scheduled to be purged, in UTC.
          readOnly: true
          example: 10
        deletedDate:
          type: integer
          format: unixtime
          description: The time when the secret was deleted, in UTC.
          readOnly: true
          example: 10
    SecretRestoreParameters:
      type: object
      description: The secret restore parameters.
      required:
      - value
      properties:
        value:
          type: string
          format: base64url
          description: The backup blob associated with a secret bundle.
          example: example_value
  parameters:
    SecretVersionParameter:
      name: secret-version
      in: path
      required: true
      description: The version of the secret. This URI fragment is optional. If not specified, the latest version of the secret is returned.
      schema:
        type: string
    SecretNameParameter:
      name: secret-name
      in: path
      required: true
      description: The name of the secret.
      schema:
        type: string
        pattern: ^[0-9a-zA-Z-]+$
    ApiVersionParameter:
      name: api-version
      in: query
      required: true
      description: The API version to use for this operation.
      schema:
        type: string
        minLength: 1
        default: '7.4'
    MaxResultsParameter:
      name: maxresults
      in: query
      required: false
      description: Maximum number of results to return in a page. If not specified, the service will return up to 25 results.
      schema:
        type: integer
        format: int32
        minimum: 1
        maximum: 25
  securitySchemes:
    OAuth2Auth:
      type: oauth2
      description: Azure Active Directory OAuth2 authentication. Requires an access token scoped to the Key Vault resource.
      flows:
        implicit:
          authorizationUrl: https://login.microsoftonline.com/common/oauth2/authorize
          scopes:
            https://vault.azure.net/.default: Access Azure Key Vault
externalDocs:
  description: Azure Key Vault REST API Reference
  url: https://learn.microsoft.com/en-us/rest/api/keyvault/