vault/sdk/framework/testdata/operations.json
Vault Automation e40eca1286
VAULT-39294: Deprecate recover_snapshot_id query param and use a header instead (#8834) (#9042)
* deprecate snapshot query params, use a header instead

* keep read query param, but deprecate recover one

* fix test

* remove list change

* add changelog

* rename header, allow request method

* update changelog

Co-authored-by: miagilepner <mia.epner@hashicorp.com>
2025-09-01 15:28:10 +00:00

328 lines
8.1 KiB
JSON

{
"openapi": "3.0.2",
"info": {
"title": "HashiCorp Vault API",
"description": "HTTP API that gives you full access to Vault. All API routes are prefixed with `/v1/`.",
"version": "<vault_version>",
"license": {
"name": "Mozilla Public License 2.0",
"url": "https://www.mozilla.org/en-US/MPL/2.0"
}
},
"paths": {
"/foo/{id}": {
"description": "Synopsis",
"parameters": [
{
"name": "id",
"description": "id path parameter",
"in": "path",
"schema": {
"type": "string"
},
"required": true
}
],
"x-vault-sudo": true,
"x-vault-createSupported": true,
"x-vault-displayAttrs": {
"navigation": true
},
"get": {
"summary": "My Summary",
"description": "My Description",
"operationId": "kv-read-foo-id",
"tags": [
"secrets"
],
"parameters": [
{
"name": "format",
"description": "a query param",
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "read_snapshot_id",
"description": "Targets the read operation to the provided loaded snapshot Id",
"in": "query",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK"
}
}
},
"post": {
"summary": "Update Summary",
"description": "Update Description",
"operationId": "kv-write-foo-id",
"tags": [
"secrets"
],
"parameters": [
{
"name": "recover_snapshot_id",
"description": "Triggers a recover operation using the given snapshot ID. Request body is ignored when a recover operation is requested.",
"in": "query",
"schema": {
"type": "string"
},
"deprecated": true
},
{
"name": "X-Vault-Recover-Snapshot-Id",
"description": "Triggers a recover operation using the given snapshot ID. Request body is ignored when a recover operation is requested.",
"in": "header",
"schema": {
"type": "string"
}
},
{
"name": "X-Vault-Recover-Source-Path",
"description": "The source path to recover from. Only used if a snapshot ID is also supplied. If not specified, the source path is assumed to be the same as the request path.",
"in": "header",
"schema": {
"type": "string"
}
}
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/KvWriteFooIdRequest"
}
}
}
},
"responses": {
"200": {
"description": "OK"
}
}
},
"patch": {
"summary": "Patch Summary",
"description": "Patch Description",
"operationId": "kv-patch-foo-id",
"tags": [
"secrets"
],
"requestBody": {
"required": true,
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/KvPatchFooIdRequest"
}
}
}
},
"responses": {
"200": {
"description": "OK"
}
}
}
},
"/foo/{id}/": {
"description": "Synopsis",
"parameters": [
{
"name": "id",
"description": "id path parameter",
"in": "path",
"schema": {
"type": "string"
},
"required": true
}
],
"x-vault-sudo": true,
"x-vault-displayAttrs": {
"navigation": true
},
"get": {
"summary": "List Summary",
"description": "List Description",
"operationId": "kv-list-foo-id",
"tags": [
"secrets"
],
"parameters": [
{
"name": "format",
"description": "a query param",
"in": "query",
"schema": {
"type": "string"
}
},
{
"name": "list",
"description": "Must be set to `true`",
"in": "query",
"schema": {
"type": "string",
"enum": [
"true"
]
},
"required": true
},
{
"name": "read_snapshot_id",
"description": "Targets the read operation to the provided loaded snapshot Id",
"in": "query",
"schema": {
"type": "string"
}
}
],
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/StandardListResponse"
}
}
}
}
}
}
}
},
"components": {
"schemas": {
"KvWriteFooIdRequest": {
"type": "object",
"properties": {
"age": {
"type": "integer",
"description": "the age",
"enum": [
1,
2,
3
],
"x-vault-displayAttrs": {
"name": "Age",
"value": 7,
"sensitive": true,
"group": "Some Group"
}
},
"flavors": {
"type": "array",
"description": "the flavors",
"items": {
"type": "string"
}
},
"format": {
"type": "string",
"description": "a query param"
},
"maximum": {
"type": "integer",
"description": "a maximum value",
"format": "int64"
},
"name": {
"type": "string",
"description": "the name",
"pattern": "\\w([\\w-.]*\\w)?",
"default": "Larry"
},
"x-abc-token": {
"type": "string",
"description": "a header value",
"enum": [
"a",
"b",
"c"
]
}
},
"required": [
"age"
]
},
"KvPatchFooIdRequest": {
"type": "object",
"properties": {
"age": {
"type": "integer",
"description": "the age",
"enum": [
1,
2,
3
],
"x-vault-displayAttrs": {
"name": "Age",
"value": 7,
"sensitive": true,
"group": "Some Group"
}
},
"flavors": {
"type": "array",
"description": "the flavors",
"items": {
"type": "string"
}
},
"format": {
"type": "string",
"description": "a query param"
},
"maximum": {
"type": "integer",
"description": "a maximum value",
"format": "int64"
},
"name": {
"type": "string",
"description": "the name",
"pattern": "\\w([\\w-.]*\\w)?",
"default": "Larry"
},
"x-abc-token": {
"type": "string",
"description": "a header value",
"enum": [
"a",
"b",
"c"
]
}
},
"required": [
"age"
]
},
"StandardListResponse": {
"type": "object",
"properties": {
"keys": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
}
}
}