mirror of
https://github.com/hashicorp/vault.git
synced 2025-12-25 19:31:14 +01:00
* 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>
328 lines
8.1 KiB
JSON
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"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} |