HashiCorp Vault Seal API

Seal and unseal operations

OpenAPI Specification

hvault-seal-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: HashiCorp Vault Vault Auth Methods AppRole Seal API
  description: APIs for authentication methods in HashiCorp Vault including Token, AppRole, Kubernetes, LDAP, JWT/OIDC, GitHub, Userpass, and AWS auth methods. These endpoints handle user and machine authentication to obtain Vault tokens.
  version: '1.0'
  contact:
    name: HashiCorp Support
    email: support@hashicorp.com
    url: https://support.hashicorp.com/
  license:
    name: Business Source License 1.1
    url: https://github.com/hashicorp/vault/blob/main/LICENSE
servers:
- url: https://vault.example.com/v1
  description: Vault Server
security:
- vaultToken: []
tags:
- name: Seal
  description: Seal and unseal operations
paths:
  /sys/seal-status:
    get:
      operationId: getSealStatus
      summary: HashiCorp Vault Read seal status
      description: Returns the seal status of the Vault server. This is an unauthenticated endpoint.
      tags:
      - Seal
      responses:
        '200':
          description: Seal status returned
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SealStatusResponse'
      security: []
  /sys/seal:
    put:
      operationId: sealVault
      summary: HashiCorp Vault Seal the Vault
      description: Seals the Vault. In HA mode, only an active node can be sealed. Standby nodes should be restarted to seal them.
      tags:
      - Seal
      responses:
        '204':
          description: Vault sealed successfully
        '500':
          description: Server error
  /sys/unseal:
    put:
      operationId: unsealVault
      summary: HashiCorp Vault Submit unseal key
      description: Submit a portion of a master key to unseal the Vault. Multiple keys must be submitted until the threshold is reached.
      tags:
      - Seal
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                key:
                  type: string
                  description: A single unseal key share
                reset:
                  type: boolean
                  description: Reset the unseal progress
                migrate:
                  type: boolean
                  description: Migrate the unseal key to a new seal type
      responses:
        '200':
          description: Unseal progress updated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/SealStatusResponse'
      security: []
components:
  schemas:
    SealStatusResponse:
      type: object
      properties:
        type:
          type: string
          description: Type of seal (shamir, awskms, etc.)
        initialized:
          type: boolean
          description: Whether the Vault is initialized
        sealed:
          type: boolean
          description: Whether the Vault is sealed
        t:
          type: integer
          description: Threshold of keys needed to unseal
        n:
          type: integer
          description: Total number of key shares
        progress:
          type: integer
          description: Number of unseal keys provided so far
        nonce:
          type: string
          description: Nonce for the current unseal attempt
        version:
          type: string
          description: Vault server version
        build_date:
          type: string
          description: Build date of the Vault binary
        migration:
          type: boolean
          description: Whether migration is in progress
        cluster_name:
          type: string
          description: Name of the Vault cluster
        cluster_id:
          type: string
          description: Unique identifier for the cluster
        recovery_seal:
          type: boolean
          description: Whether recovery seal is configured
        storage_type:
          type: string
          description: Type of storage backend
  securitySchemes:
    vaultToken:
      type: apiKey
      in: header
      name: X-Vault-Token
      description: Vault authentication token
externalDocs:
  description: Vault Auth Methods API Documentation
  url: https://developer.hashicorp.com/vault/api-docs/auth