mirror of
https://github.com/elastic/kibana.git
synced 2025-04-23 01:13:23 -04:00
[Fleet] remove old bundled.yaml from oas, fixed tags (#194788)
## Summary Closes https://github.com/elastic/kibana/issues/184685 **Release notes**: These schema changes shouldn't be breaking, but there were some incorrect/missing response schemas in the old openapi spec. For example the API `POST /api/fleet/agents/{agentId}/actions` response was incorrectly documented: https://petstore.swagger.io/?url=https://raw.githubusercontent.com/elastic/kibana/main/x-pack/plugins/fleet/common/openapi/bundled.json#/Elastic%20Agent%20actions/new-agent-action ``` { "body": [ 0 ], "statusCode": 0, "headers": "string" } ``` Fixed here:31f8cfd6ef/oas_docs/bundle.json
#/Elastic%20Agent%20actions/%252Fapi%252Ffleet%252Fagents%252F%257BagentId%257D%252Factions%230 ``` { "item": { "ack_data": "string", "agents": [ "string" ], "created_at": "string", "data": "string", "expiration": "string", "id": "string", "minimum_execution_duration": 0, "namespaces": [ "string" ], "rollout_duration_seconds": 0, "sent_at": "string", "source_uri": "string", "start_time": "string", "total": 0, "type": "string" } } ``` The new spec should match the implementation accurately, and responses are being verified when returned. Tests were added to make sure the response schemas are correct. If there are any bugs in the current schema, it will result in a HTTP 500 error with an error message on where the schema validation failed. Example of an error where a field is missing: ``` { "statusCode": 500, "error": "Internal Server Error", "message": "Failed output validation: [request body.items.0.name]: definition for this key is missing" } ``` Example of an error where a field is mandatory in the schema, but not provided in the response (missing `schema.maybe`) ``` { "statusCode": 500, "error": "Internal Server Error", "message": "Failed output validation: [request body.items.0.internal]: expected value of type [boolean] but got [undefined]" } ``` There are a few places where the validation allows unknown fields. Used it where some fields were not included in TS types or fields are more dynamic, e.g. fields coming from packages or elasticsearch settings. https://github.com/search?q=repo%3Aelastic%2Fkibana+extendsDeep+path%3A%2F%5Ex-pack%5C%2Fplugins%5C%2Ffleet%5C%2Fserver%5C%2Ftypes%5C%2F%2F&type=code ``` .extendsDeep({ unknowns: 'allow', }) ``` Changes in this pr: Remove using old `bundled.yaml` to generate oas, fixed tags. Removed old openapi files, updated readme. Here is the new bundle in Swagger UI: [stateful](31f8cfd6ef/oas_docs/bundle.json
) [serverless](da72ee0093/oas_docs/bundle.serverless.json
) Updated serverless scripts too. Updated Fleet readme:da72ee0093/x-pack/plugins/fleet/common/openapi/README.md
Generated the new bundle by running this script locally: ``` node scripts/capture_oas_snapshot --include-path /api/fleet --update ``` --------- Co-authored-by: kibanamachine <42973632+kibanamachine@users.noreply.github.com>
This commit is contained in:
parent
c392aba39f
commit
52abebf0cb
178 changed files with 157532 additions and 40690 deletions
|
@ -5,7 +5,7 @@ set -euo pipefail
|
|||
source .buildkite/scripts/common/util.sh
|
||||
|
||||
echo --- Capture OAS snapshot
|
||||
cmd="node scripts/capture_oas_snapshot --include-path /api/status --include-path /api/alerting/rule/ --include-path /api/alerting/rules --include-path /api/actions --include-path /api/security/role --include-path /api/spaces"
|
||||
cmd="node scripts/capture_oas_snapshot --include-path /api/status --include-path /api/alerting/rule/ --include-path /api/alerting/rules --include-path /api/actions --include-path /api/security/role --include-path /api/spaces --include-path /api/fleet"
|
||||
if is_pr && ! is_auto_commit_disabled; then
|
||||
cmd="$cmd --update"
|
||||
fi
|
||||
|
|
34456
oas_docs/bundle.json
34456
oas_docs/bundle.json
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -20,7 +20,6 @@ const { REPO_ROOT } = require('@kbn/repo-info');
|
|||
`${REPO_ROOT}/src/plugins/data_views/docs/openapi/bundled.yaml`,
|
||||
`${REPO_ROOT}/x-pack/plugins/ml/common/openapi/ml_apis.yaml`,
|
||||
`${REPO_ROOT}/packages/core/saved-objects/docs/openapi/bundled.yaml`,
|
||||
`${REPO_ROOT}/x-pack/plugins/fleet/common/openapi/bundled.yaml`,
|
||||
|
||||
// Observability Solution
|
||||
`${REPO_ROOT}/x-pack/plugins/observability_solution/apm/docs/openapi/apm.yaml`,
|
||||
|
|
|
@ -20,7 +20,6 @@ const { REPO_ROOT } = require('@kbn/repo-info');
|
|||
`${REPO_ROOT}/src/plugins/data_views/docs/openapi/bundled.yaml`,
|
||||
`${REPO_ROOT}/x-pack/plugins/ml/common/openapi/ml_apis.yaml`,
|
||||
`${REPO_ROOT}/packages/core/saved-objects/docs/openapi/bundled.yaml`,
|
||||
`${REPO_ROOT}/x-pack/plugins/fleet/common/openapi/bundled.yaml`,
|
||||
|
||||
// Observability Solution
|
||||
`${REPO_ROOT}/x-pack/plugins/observability_solution/apm/docs/openapi/apm.yaml`,
|
||||
|
|
|
@ -18,7 +18,6 @@ const { REPO_ROOT } = require('@kbn/repo-info');
|
|||
`${REPO_ROOT}/src/plugins/data_views/docs/openapi/bundled.yaml`,
|
||||
`${REPO_ROOT}/x-pack/plugins/ml/common/openapi/ml_apis_serverless.yaml`,
|
||||
`${REPO_ROOT}/packages/core/saved-objects/docs/openapi/bundled_serverless.yaml`,
|
||||
`${REPO_ROOT}/x-pack/plugins/fleet/common/openapi/bundled.yaml`,
|
||||
|
||||
// Observability Solution
|
||||
`${REPO_ROOT}/x-pack/plugins/observability_solution/apm/docs/openapi/apm.yaml`,
|
||||
|
|
|
@ -18,7 +18,6 @@ const { REPO_ROOT } = require('@kbn/repo-info');
|
|||
`${REPO_ROOT}/src/plugins/data_views/docs/openapi/bundled.yaml`,
|
||||
`${REPO_ROOT}/x-pack/plugins/ml/common/openapi/ml_apis_serverless.yaml`,
|
||||
`${REPO_ROOT}/packages/core/saved-objects/docs/openapi/bundled_serverless.yaml`,
|
||||
`${REPO_ROOT}/x-pack/plugins/fleet/common/openapi/bundled.yaml`,
|
||||
|
||||
// Observability Solution
|
||||
`${REPO_ROOT}/x-pack/plugins/observability_solution/apm/docs/openapi/apm.yaml`,
|
||||
|
|
|
@ -1,39 +1,24 @@
|
|||
# OpenAPI
|
||||
|
||||
The current self-contained spec file, available [as JSON](https://raw.githubusercontent.com/elastic/kibana/master/x-pack/plugins/fleet/common/openapi/bundled.json) or [as YAML](https://raw.githubusercontent.com/elastic/kibana/master/x-pack/plugins/fleet/common/openapi/bundled.yaml), can be used for online tools like those found at https://openapi.tools/.
|
||||
There is a new way to generate openapi docs from the route definition in code.
|
||||
|
||||
For example, [click here to view the specification in the Swagger UI](https://petstore.swagger.io/?url=https://raw.githubusercontent.com/elastic/kibana/master/x-pack/plugins/fleet/common/openapi/bundled.json).
|
||||
When adding a new route/modifying request/response parameters, make sure to add/update schema definitions when registering the route.
|
||||
[Example](https://github.com/elastic/kibana/blob/5ea1ab0b8a21764aa54a5ef9650a0d8046f3f0a8/x-pack/plugins/fleet/server/routes/agent/index.ts#L96-L123)
|
||||
|
||||
A guide about the openApi specification can be found at [https://swagger.io/docs/specification/about/](https://swagger.io/docs/specification/about/).
|
||||
Read more: https://docs.elastic.dev/kibana-dev-docs/genereating-oas-for-http-apis
|
||||
|
||||
Fleet API docs: https://www.elastic.co/guide/en/fleet/master/fleet-apis.html
|
||||
To check the updated oas locally, run this script:
|
||||
|
||||
## The `openapi` folder
|
||||
|
||||
- `entrypoint.yaml` is the overview file which links to the various files on disk.
|
||||
- `bundled.{yaml,json}` is the resolved output of that entry & other files in a single file. Typically the best choice as input to tools.
|
||||
- [Paths](paths/README.md): this defines each endpoint. A path can have one operation per http method.
|
||||
- [Components](components/README.md): Reusable components like [`schemas`](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#schemaObject),
|
||||
[`responses`](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#responseObject)
|
||||
[`parameters`](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#parameterObject)
|
||||
|
||||
## Tools
|
||||
|
||||
It is possible to validate the docs before bundling them with the following command:
|
||||
|
||||
```shell
|
||||
npx @redocly/cli lint entrypoint.yaml
|
||||
```
|
||||
node scripts/capture_oas_snapshot --include-path /api/fleet --update
|
||||
```
|
||||
|
||||
Then generate the `bundled` files with the following:
|
||||
Use `--include-path /api/fleet` to only generate fleet paths.
|
||||
|
||||
```shell
|
||||
npx @redocly/openapi-cli bundle --ext yaml --output bundled.yaml entrypoint.yaml
|
||||
npx @redocly/openapi-cli bundle --ext json --output bundled.json entrypoint.yaml
|
||||
```
|
||||
Use `--no-serverless` to only generate for stateful.
|
||||
|
||||
Validate the resulting bundle via
|
||||
Check the result in `oas_docs/bundle.json` and `oas_docs/bundle.serverless.json`
|
||||
|
||||
```shell
|
||||
npx @redocly/cli lint bundled.json
|
||||
```
|
||||
Check the result in Swagger UI by taking the raw file from the pr: https://petstore.swagger.io/?url=https://raw.githubusercontent.com/elastic/kibana/main/oas_docs/bundle.json
|
||||
|
||||
Changes to the bundles don't have to be committed, it is auto-committed by CI in `capture_oas_snapshot.sh`.
|
||||
|
|
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -1,13 +0,0 @@
|
|||
Reusable components
|
||||
===========
|
||||
|
||||
* Created the following folders for the various OpenAPI component types:
|
||||
- `schemas` - reusable [Schema Objects](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#schemaObject)
|
||||
- `responses` - reusable [Response Objects](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#responseObject)
|
||||
- `parameters` - reusable [Parameter Objects](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#parameterObject)
|
||||
- `examples` - reusable [Example Objects](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#exampleObject)
|
||||
- `headers` - reusable [Header Objects](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#headerObject)
|
||||
- `request_bodies` - reusable [Request Body Objects](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#requestBodyObject)
|
||||
- `links` - reusable [Link Objects](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#linkObject)
|
||||
- `callbacks` - reusable [Callback Objects](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#callbackObject)
|
||||
- `security_schemes` - reusable [Security Scheme Objects](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.2.md#securitySchemeObject)
|
|
@ -1,6 +0,0 @@
|
|||
schema:
|
||||
type: string
|
||||
in: header
|
||||
name: kbn-xsrf
|
||||
required: true
|
||||
description: Kibana's anti Cross-Site Request Forgery token. Can be any string value.
|
|
@ -1,8 +0,0 @@
|
|||
name: format
|
||||
in: query
|
||||
description: Simplified or legacy format for package inputs
|
||||
required: false
|
||||
schema:
|
||||
type: string
|
||||
enum: ['simplified', 'legacy']
|
||||
|
|
@ -1,5 +0,0 @@
|
|||
name: kuery
|
||||
in: query
|
||||
required: false
|
||||
schema:
|
||||
type: string
|
|
@ -1,6 +0,0 @@
|
|||
name: page
|
||||
in: query
|
||||
required: false
|
||||
schema:
|
||||
type: integer
|
||||
default: 1
|
|
@ -1,7 +0,0 @@
|
|||
name: perPage
|
||||
in: query
|
||||
description: The number of items to return
|
||||
required: false
|
||||
schema:
|
||||
type: integer
|
||||
default: 20
|
|
@ -1,5 +0,0 @@
|
|||
name: showInactive
|
||||
in: query
|
||||
required: false
|
||||
schema:
|
||||
type: boolean
|
|
@ -1,5 +0,0 @@
|
|||
name: showUpgradeable
|
||||
in: query
|
||||
required: false
|
||||
schema:
|
||||
type: boolean
|
|
@ -1,6 +0,0 @@
|
|||
name: sortField
|
||||
in: query
|
||||
required: false
|
||||
schema:
|
||||
type: string
|
||||
deprecated: true
|
|
@ -1,6 +0,0 @@
|
|||
name: sortOrder
|
||||
in: query
|
||||
required: false
|
||||
schema:
|
||||
type: string
|
||||
enum: [asc, desc]
|
|
@ -1,6 +0,0 @@
|
|||
name: withMetrics
|
||||
in: query
|
||||
description: Return agent metrics, false by default
|
||||
required: false
|
||||
schema:
|
||||
type: boolean
|
|
@ -1,12 +0,0 @@
|
|||
description: Generic Error
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
statusCode:
|
||||
type: number
|
||||
error:
|
||||
type: string
|
||||
message:
|
||||
type: string
|
|
@ -1,55 +0,0 @@
|
|||
title: Agent
|
||||
type: object
|
||||
properties:
|
||||
type:
|
||||
$ref: ./agent_type.yaml
|
||||
active:
|
||||
type: boolean
|
||||
enrolled_at:
|
||||
type: string
|
||||
unenrolled_at:
|
||||
type: string
|
||||
unenrollment_started_at:
|
||||
type: string
|
||||
access_api_key_id:
|
||||
type: string
|
||||
default_api_key_id:
|
||||
type: string
|
||||
policy_id:
|
||||
type: string
|
||||
policy_revision:
|
||||
type: number
|
||||
last_checkin:
|
||||
type: string
|
||||
user_provided_metadata:
|
||||
$ref: ./agent_metadata.yaml
|
||||
local_metadata:
|
||||
$ref: ./agent_metadata.yaml
|
||||
id:
|
||||
type: string
|
||||
access_api_key:
|
||||
type: string
|
||||
status:
|
||||
$ref: ./agent_status.yaml
|
||||
default_api_key:
|
||||
type: string
|
||||
components:
|
||||
type: array
|
||||
items:
|
||||
$ref: ./agent_component.yaml
|
||||
metrics:
|
||||
type: object
|
||||
properties:
|
||||
cpu_avg:
|
||||
type: number
|
||||
description: Average agent CPU usage during the last 5 minutes, number between 0-1
|
||||
memory_size_byte_avg:
|
||||
type: number
|
||||
description: Average agent memory consumption during the last 5 minutes
|
||||
|
||||
required:
|
||||
- type
|
||||
- active
|
||||
- enrolled_at
|
||||
- id
|
||||
- status
|
|
@ -1,27 +0,0 @@
|
|||
title: Agent action
|
||||
oneOf:
|
||||
- properties:
|
||||
data:
|
||||
type: string
|
||||
ack_data:
|
||||
type: string
|
||||
type:
|
||||
type: string
|
||||
enum:
|
||||
- UNENROLL
|
||||
- UPGRADE
|
||||
- POLICY_REASSIGN
|
||||
- properties:
|
||||
type:
|
||||
type: string
|
||||
data:
|
||||
type: object
|
||||
properties:
|
||||
log_level:
|
||||
type: string
|
||||
nullable: true
|
||||
enum:
|
||||
- debug
|
||||
- info
|
||||
- warning
|
||||
- error
|
|
@ -1,15 +0,0 @@
|
|||
title: Agent component
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
type:
|
||||
type: string
|
||||
status:
|
||||
$ref: ./agent_component_status.yaml
|
||||
message:
|
||||
type: string
|
||||
units:
|
||||
type: array
|
||||
items:
|
||||
$ref: ./agent_component_unit.yaml
|
|
@ -1,10 +0,0 @@
|
|||
title: Agent component status
|
||||
type: string
|
||||
enum:
|
||||
- starting
|
||||
- configuring
|
||||
- healthy
|
||||
- degraded
|
||||
- failed
|
||||
- stopping
|
||||
- stopped
|
|
@ -1,13 +0,0 @@
|
|||
title: Agent component unit
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
type:
|
||||
$ref: ./agent_component_unit_type.yaml
|
||||
status:
|
||||
$ref: ./agent_component_status.yaml
|
||||
message:
|
||||
type: string
|
||||
payload:
|
||||
type: object
|
|
@ -1,5 +0,0 @@
|
|||
title: Agent component unit type
|
||||
type: string
|
||||
enum:
|
||||
- input
|
||||
- output
|
|
@ -1,27 +0,0 @@
|
|||
|
||||
title: Agent diagnostics
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
name:
|
||||
type: string
|
||||
createTime:
|
||||
type: string
|
||||
filePath:
|
||||
type: string
|
||||
actionId:
|
||||
type: string
|
||||
status:
|
||||
enum:
|
||||
- READY
|
||||
- AWAITING_UPLOAD
|
||||
- DELETED
|
||||
- IN_PROGRESS
|
||||
required:
|
||||
- id
|
||||
- name
|
||||
- createTime
|
||||
- filePath
|
||||
- actionId
|
||||
- status
|
|
@ -1,6 +0,0 @@
|
|||
title: Agents get by action ids
|
||||
type: array
|
||||
items:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
|
@ -1,2 +0,0 @@
|
|||
title: Agent metadata
|
||||
type: object
|
|
@ -1,126 +0,0 @@
|
|||
title: Agent Policy
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
name:
|
||||
type: string
|
||||
namespace:
|
||||
type: string
|
||||
description:
|
||||
type: string
|
||||
monitoring_enabled:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
enum:
|
||||
- metrics
|
||||
- logs
|
||||
keep_monitoring_alive:
|
||||
description: When set to true, monitoring will be enabled but logs/metrics collection will be disabled
|
||||
type: boolean
|
||||
nullable: true
|
||||
data_output_id:
|
||||
type: string
|
||||
nullable: true
|
||||
monitoring_output_id:
|
||||
type: string
|
||||
nullable: true
|
||||
fleet_server_host_id:
|
||||
type: string
|
||||
nullable: true
|
||||
download_source_id:
|
||||
type: string
|
||||
nullable: true
|
||||
unenroll_timeout:
|
||||
type: integer
|
||||
inactivity_timeout:
|
||||
type: integer
|
||||
package_policies:
|
||||
description: This field is present only when retrieving a single agent policy, or when retrieving a list of agent policies with the ?full=true parameter
|
||||
type: array
|
||||
items:
|
||||
$ref: ./package_policy.yaml
|
||||
updated_on:
|
||||
type: string
|
||||
format: date-time
|
||||
updated_by:
|
||||
type: string
|
||||
revision:
|
||||
type: number
|
||||
agents:
|
||||
type: number
|
||||
unprivileged_agents:
|
||||
type: number
|
||||
agent_features:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
name:
|
||||
type: string
|
||||
enabled:
|
||||
type: boolean
|
||||
required:
|
||||
- name
|
||||
- enabled
|
||||
is_protected:
|
||||
description: Indicates whether the agent policy has tamper protection enabled. Default false.
|
||||
type: boolean
|
||||
overrides:
|
||||
type: object
|
||||
description: Override settings that are defined in the agent policy. Input settings cannot be overridden. The override option should be used only in unusual circumstances and not as a routine procedure.
|
||||
nullable: true
|
||||
advanced_settings:
|
||||
type: object
|
||||
description: Advanced settings stored in the agent policy, e.g. agent_limits_go_max_procs
|
||||
nullable: true
|
||||
supports_agentless:
|
||||
type: boolean
|
||||
description: Indicates whether the agent policy supports agentless integrations. Only allowed in a serverless environment.
|
||||
global_data_tags:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
additionalProperties:
|
||||
oneOf:
|
||||
- type: string
|
||||
- type: number
|
||||
description: User defined data tags that are added to all of the inputs. The values can be strings or numbers.
|
||||
monitoring_pprof_enabled:
|
||||
type: boolean
|
||||
monitoring_http:
|
||||
type: object
|
||||
properties:
|
||||
enabled:
|
||||
type: boolean
|
||||
host:
|
||||
type: string
|
||||
port:
|
||||
type: number
|
||||
required:
|
||||
- enabled
|
||||
monitoring_diagnostics:
|
||||
type: object
|
||||
properties:
|
||||
limit:
|
||||
type: object
|
||||
properties:
|
||||
interval:
|
||||
type: string
|
||||
burst:
|
||||
type: number
|
||||
uploader:
|
||||
type: object
|
||||
properties:
|
||||
max_retries:
|
||||
type: number
|
||||
init_dur:
|
||||
type: string
|
||||
max_dur:
|
||||
type: string
|
||||
required:
|
||||
- id
|
||||
- status
|
||||
- name
|
||||
- namespace
|
|
@ -1,63 +0,0 @@
|
|||
title: Create agent policy request
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
name:
|
||||
type: string
|
||||
namespace:
|
||||
type: string
|
||||
description:
|
||||
type: string
|
||||
monitoring_enabled:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
enum:
|
||||
- metrics
|
||||
- logs
|
||||
data_output_id:
|
||||
type: string
|
||||
nullable: true
|
||||
monitoring_output_id:
|
||||
type: string
|
||||
nullable: true
|
||||
fleet_server_host_id:
|
||||
type: string
|
||||
nullable: true
|
||||
download_source_id:
|
||||
type: string
|
||||
nullable: true
|
||||
unenroll_timeout:
|
||||
type: integer
|
||||
inactivity_timeout:
|
||||
type: integer
|
||||
agent_features:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
name:
|
||||
type: string
|
||||
enabled:
|
||||
type: boolean
|
||||
required:
|
||||
- name
|
||||
- enabled
|
||||
is_protected:
|
||||
type: boolean
|
||||
force:
|
||||
type: boolean
|
||||
description: Force agent policy creation even if packages are not verified.
|
||||
global_data_tags:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
additionalProperties:
|
||||
oneOf:
|
||||
- type: string
|
||||
- type: number
|
||||
description: User defined data tags that are added to all of the inputs. The values can be strings or numbers.
|
||||
required:
|
||||
- name
|
||||
- namespace
|
|
@ -1,11 +0,0 @@
|
|||
title: Agent policy full response
|
||||
type: object
|
||||
oneOf:
|
||||
- type: object
|
||||
properties:
|
||||
item:
|
||||
type: string
|
||||
- type: object
|
||||
properties:
|
||||
item:
|
||||
$ref: ./full_agent_policy.yaml
|
|
@ -1,61 +0,0 @@
|
|||
title: Update agent policy request
|
||||
type: object
|
||||
properties:
|
||||
name:
|
||||
type: string
|
||||
namespace:
|
||||
type: string
|
||||
description:
|
||||
type: string
|
||||
monitoring_enabled:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
enum:
|
||||
- metrics
|
||||
- logs
|
||||
data_output_id:
|
||||
type: string
|
||||
nullable: true
|
||||
monitoring_output_id:
|
||||
type: string
|
||||
nullable: true
|
||||
fleet_server_host_id:
|
||||
type: string
|
||||
nullable: true
|
||||
download_source_id:
|
||||
type: string
|
||||
nullable: true
|
||||
unenroll_timeout:
|
||||
type: integer
|
||||
inactivity_timeout:
|
||||
type: integer
|
||||
agent_features:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
name:
|
||||
type: string
|
||||
enabled:
|
||||
type: boolean
|
||||
required:
|
||||
- name
|
||||
- enabled
|
||||
is_protected:
|
||||
type: boolean
|
||||
force:
|
||||
type: boolean
|
||||
description: Force agent policy creation even if packages are not verified.
|
||||
global_data_tags:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
additionalProperties:
|
||||
oneOf:
|
||||
- type: string
|
||||
- type: number
|
||||
description: User defined data tags that are added to all of the inputs. The values can be strings or numbers.
|
||||
required:
|
||||
- name
|
||||
- namespace
|
|
@ -1,8 +0,0 @@
|
|||
type: string
|
||||
title: Elastic Agent status
|
||||
enum:
|
||||
- offline
|
||||
- error
|
||||
- online
|
||||
- inactive
|
||||
- warning
|
|
@ -1,6 +0,0 @@
|
|||
type: string
|
||||
title: Agent type
|
||||
enum:
|
||||
- PERMANENT
|
||||
- EPHEMERAL
|
||||
- TEMPORARY
|
|
@ -1,24 +0,0 @@
|
|||
title: Bulk install packages response
|
||||
type: object
|
||||
properties:
|
||||
response:
|
||||
type: array
|
||||
deprecated: true
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
name:
|
||||
type: string
|
||||
version:
|
||||
type: string
|
||||
items:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
name:
|
||||
type: string
|
||||
version:
|
||||
type: string
|
||||
required:
|
||||
- items
|
|
@ -1,32 +0,0 @@
|
|||
title: Bulk upgrade agents
|
||||
type: object
|
||||
properties:
|
||||
version:
|
||||
type: string
|
||||
description: version to upgrade to
|
||||
source_uri:
|
||||
type: string
|
||||
description: alternative upgrade binary download url
|
||||
rollout_duration_seconds:
|
||||
type: number
|
||||
description: rolling upgrade window duration in seconds
|
||||
start_time:
|
||||
type: string
|
||||
description: start time of upgrade in ISO 8601 format
|
||||
agents:
|
||||
oneOf:
|
||||
- type: string
|
||||
description: KQL query string, leave empty to action all agents
|
||||
- type: array
|
||||
items:
|
||||
type: string
|
||||
description: list of agent IDs
|
||||
force:
|
||||
type: boolean
|
||||
description: Force upgrade, skipping validation (should be used with caution)
|
||||
skipRateLimitCheck:
|
||||
type: boolean
|
||||
description: Skip rate limit check for upgrade
|
||||
required:
|
||||
- agents
|
||||
- version
|
|
@ -1,30 +0,0 @@
|
|||
title: Data stream
|
||||
type: object
|
||||
properties:
|
||||
index:
|
||||
type: string
|
||||
dataset:
|
||||
type: string
|
||||
namespace:
|
||||
type: string
|
||||
type:
|
||||
type: string
|
||||
package:
|
||||
type: string
|
||||
package_version:
|
||||
type: string
|
||||
last_activity_ms:
|
||||
type: number
|
||||
size_in_bytes:
|
||||
type: number
|
||||
size_in_bytes_formatted:
|
||||
type: string
|
||||
dashboard:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
title:
|
||||
type: string
|
|
@ -1,19 +0,0 @@
|
|||
title: Download Source
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
is_default:
|
||||
type: boolean
|
||||
name:
|
||||
type: string
|
||||
host:
|
||||
type: string
|
||||
proxy_id:
|
||||
description: The ID of the proxy to use for this download source. See the proxies API for more information.
|
||||
type: string
|
||||
nullable: true
|
||||
required:
|
||||
- is_default
|
||||
- name
|
||||
- host
|
|
@ -1,9 +0,0 @@
|
|||
title: Elasticsearch asset type
|
||||
type: string
|
||||
enum:
|
||||
- component_template
|
||||
- ingest_pipeline
|
||||
- index_template
|
||||
- ilm_policy
|
||||
- transform
|
||||
- data_stream_ilm_policy
|
|
@ -1,28 +0,0 @@
|
|||
title: Enrollment API key
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
api_key_id:
|
||||
type: string
|
||||
description: The ID of the API key in the Security API.
|
||||
api_key:
|
||||
type: string
|
||||
description: The enrollment API key (token) used for enrolling Elastic Agents.
|
||||
name:
|
||||
type: string
|
||||
description: The name of the enrollment API key.
|
||||
active:
|
||||
type: boolean
|
||||
description: When false, the enrollment API key is revoked and cannot be used for enrolling Elastic Agents.
|
||||
policy_id:
|
||||
type: string
|
||||
description: The ID of the agent policy the Elastic Agent will be enrolled in.
|
||||
created_at:
|
||||
type: string
|
||||
required:
|
||||
- id
|
||||
- api_key_id
|
||||
- api_key
|
||||
- active
|
||||
- created_at
|
|
@ -1,25 +0,0 @@
|
|||
title: Fleet Server Host
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
name:
|
||||
type: string
|
||||
is_default:
|
||||
type: boolean
|
||||
is_internal:
|
||||
type: boolean
|
||||
is_preconfigured:
|
||||
type: boolean
|
||||
proxy_id:
|
||||
type: string
|
||||
host_urls:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
required:
|
||||
- fleet_server_hosts
|
||||
- id
|
||||
- is_default
|
||||
- is_preconfigured
|
||||
- host_urls
|
|
@ -1,54 +0,0 @@
|
|||
title: Fleet settings response
|
||||
type: object
|
||||
properties:
|
||||
fleet_server:
|
||||
type: object
|
||||
properties:
|
||||
policies:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
name:
|
||||
type: string
|
||||
is_managed:
|
||||
type: boolean
|
||||
is_default_fleet_server:
|
||||
type: boolean
|
||||
has_fleet_server:
|
||||
type: boolean
|
||||
fleet_server_host_id:
|
||||
type: string
|
||||
download_source_id:
|
||||
type: string
|
||||
space_ids:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
data_output_id:
|
||||
type: string
|
||||
required:
|
||||
- id
|
||||
- name
|
||||
- is_managed
|
||||
has_active:
|
||||
type: boolean
|
||||
host:
|
||||
$ref: ./fleet_server_host.yaml
|
||||
host_proxy:
|
||||
$ref: ./proxies.yaml
|
||||
es_output:
|
||||
$ref: ./output_create_request_elasticsearch.yaml
|
||||
es_output_proxy:
|
||||
$ref: ./proxies.yaml
|
||||
required:
|
||||
- agent_policies
|
||||
- has_active
|
||||
download_source:
|
||||
$ref: ./download_sources.yaml
|
||||
download_source_proxy:
|
||||
$ref: ./proxies.yaml
|
||||
required:
|
||||
- fleet_server
|
|
@ -1,7 +0,0 @@
|
|||
title: Fleet settings response
|
||||
type: object
|
||||
properties:
|
||||
item:
|
||||
$ref: ./settings.yaml
|
||||
required:
|
||||
- item
|
|
@ -1,20 +0,0 @@
|
|||
title: Fleet Setup response
|
||||
type: object
|
||||
properties:
|
||||
isInitialized:
|
||||
type: boolean
|
||||
nonFatalErrors:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
name:
|
||||
type: string
|
||||
message:
|
||||
type: string
|
||||
required:
|
||||
- name
|
||||
- message
|
||||
required:
|
||||
- isInitialized
|
||||
- nonFatalErrors
|
|
@ -1,26 +0,0 @@
|
|||
title: Fleet status response
|
||||
type: object
|
||||
properties:
|
||||
isReady:
|
||||
type: boolean
|
||||
missing_requirements:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
enum:
|
||||
- 'tls_required'
|
||||
- 'api_keys'
|
||||
- 'fleet_admin_user'
|
||||
- 'fleet_server'
|
||||
missing_optional_features:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
enum:
|
||||
- 'encrypted_saved_object_encryption_key_required'
|
||||
package_verification_key_id:
|
||||
type: string
|
||||
required:
|
||||
- isReady
|
||||
- missing_requirements
|
||||
- missing_optional_features
|
|
@ -1,132 +0,0 @@
|
|||
title: Full agent policy
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
outputs:
|
||||
type: object
|
||||
additionalProperties:
|
||||
$ref: ./full_agent_policy_output.yaml
|
||||
output_permissions:
|
||||
type: object
|
||||
additionalProperties:
|
||||
type: object
|
||||
properties:
|
||||
output:
|
||||
type: integer
|
||||
data:
|
||||
$ref: ./full_agent_policy_output_permissions.yaml
|
||||
monitoring:
|
||||
type: object
|
||||
properties:
|
||||
namespace:
|
||||
type: string
|
||||
use_output:
|
||||
type: string
|
||||
enabled:
|
||||
type: boolean
|
||||
metrics:
|
||||
type: boolean
|
||||
logs:
|
||||
type: boolean
|
||||
traces:
|
||||
type: boolean
|
||||
pprof:
|
||||
type: object
|
||||
properties:
|
||||
enabled:
|
||||
type: boolean
|
||||
required:
|
||||
- enabled
|
||||
http:
|
||||
type: object
|
||||
properties:
|
||||
enabled:
|
||||
type: boolean
|
||||
host:
|
||||
type: string
|
||||
port:
|
||||
type: number
|
||||
required:
|
||||
- enabled
|
||||
diagnostics:
|
||||
type: object
|
||||
properties:
|
||||
limit:
|
||||
type: object
|
||||
properties:
|
||||
interval:
|
||||
type: string
|
||||
burst:
|
||||
type: number
|
||||
uploader:
|
||||
type: object
|
||||
properties:
|
||||
max_retries:
|
||||
type: number
|
||||
init_dur:
|
||||
type: string
|
||||
max_dur:
|
||||
type: string
|
||||
required:
|
||||
- enabled
|
||||
- metrics
|
||||
- logs
|
||||
- traces
|
||||
fleet:
|
||||
oneOf:
|
||||
- type: object
|
||||
properties:
|
||||
hosts:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
proxy_url:
|
||||
type: string
|
||||
proxy_headers: {}
|
||||
ssl:
|
||||
type: object
|
||||
properties:
|
||||
verification_mode:
|
||||
type: string
|
||||
certificate:
|
||||
type: string
|
||||
key:
|
||||
type: string
|
||||
certificate_authorities:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
renegotiation:
|
||||
type: string
|
||||
- type: object
|
||||
properties:
|
||||
kibana:
|
||||
type: object
|
||||
properties:
|
||||
hosts:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
protocol:
|
||||
type: string
|
||||
path:
|
||||
type: string
|
||||
inputs:
|
||||
type: string
|
||||
revision:
|
||||
type: number
|
||||
agent:
|
||||
type: string
|
||||
nullable: true
|
||||
secret_references:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
required:
|
||||
- id
|
||||
- outputs
|
||||
- inputs
|
|
@ -1,45 +0,0 @@
|
|||
title: Full agent policy input
|
||||
allOf:
|
||||
- type: object
|
||||
additionalProperties: true
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
name:
|
||||
type: string
|
||||
revision:
|
||||
type: number
|
||||
type:
|
||||
type: string
|
||||
data_stream:
|
||||
type: object
|
||||
properties:
|
||||
namespace:
|
||||
type: string
|
||||
required:
|
||||
- namespace
|
||||
use_output:
|
||||
type: string
|
||||
meta:
|
||||
type: object
|
||||
additionalProperties: true
|
||||
properties:
|
||||
package:
|
||||
type: object
|
||||
properties:
|
||||
name:
|
||||
type: string
|
||||
version:
|
||||
type: string
|
||||
required:
|
||||
- name
|
||||
- version
|
||||
streams:
|
||||
$ref: ./full_agent_policy_input_stream.yaml
|
||||
required:
|
||||
- id
|
||||
- name
|
||||
- revision
|
||||
- type
|
||||
- data_stream
|
||||
- use_output
|
|
@ -1,20 +0,0 @@
|
|||
title: Full agent policy input stream
|
||||
allOf:
|
||||
- type: object
|
||||
additionalProperties: true
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
data_stream:
|
||||
type: object
|
||||
properties:
|
||||
dataset:
|
||||
type: string
|
||||
type:
|
||||
type: string
|
||||
required:
|
||||
- dataset
|
||||
- type
|
||||
required:
|
||||
- id
|
||||
- data_stream
|
|
@ -1,22 +0,0 @@
|
|||
title: Full agent policy
|
||||
type: object
|
||||
properties:
|
||||
hosts:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
ca_sha256:
|
||||
type: string
|
||||
nullable: true
|
||||
proxy_url:
|
||||
type: string
|
||||
proxy_headers: {}
|
||||
type: {}
|
||||
additionalProperties:
|
||||
type: object
|
||||
properties:
|
||||
text: {}
|
||||
required:
|
||||
- type
|
||||
- hosts
|
||||
- ca_sha256
|
|
@ -1,28 +0,0 @@
|
|||
title: Full agent policy output permissions
|
||||
additionalProperties:
|
||||
type: object
|
||||
properties:
|
||||
packagePolicyName:
|
||||
type: string
|
||||
data:
|
||||
type: object
|
||||
properties:
|
||||
cluster:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
indices:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
names:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
privileges:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
title: Get Agent Tags response
|
||||
type: object
|
||||
properties:
|
||||
items:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
|
@ -1,44 +0,0 @@
|
|||
title: Get Agent response
|
||||
type: object
|
||||
properties:
|
||||
list:
|
||||
type: array
|
||||
items:
|
||||
$ref: ./agent.yaml
|
||||
deprecated: true
|
||||
items:
|
||||
type: array
|
||||
items:
|
||||
$ref: ./agent.yaml
|
||||
total:
|
||||
type: number
|
||||
page:
|
||||
type: number
|
||||
perPage:
|
||||
type: number
|
||||
statusSummary:
|
||||
type: object
|
||||
properties:
|
||||
offline:
|
||||
type: number
|
||||
error:
|
||||
type: number
|
||||
online :
|
||||
type: number
|
||||
inactive :
|
||||
type: number
|
||||
enrolling:
|
||||
type: number
|
||||
unenrolling:
|
||||
type: number
|
||||
unenrolled :
|
||||
type: number
|
||||
updating :
|
||||
type: number
|
||||
degraded':
|
||||
type: number
|
||||
required:
|
||||
- items
|
||||
- total
|
||||
- page
|
||||
- perPage
|
|
@ -1,26 +0,0 @@
|
|||
title: Bulk get assets response
|
||||
type: object
|
||||
deprecated: true
|
||||
properties:
|
||||
items:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
type:
|
||||
$ref: ./saved_object_type.yaml
|
||||
updatedAt:
|
||||
type: string
|
||||
attributes:
|
||||
type: object
|
||||
properties:
|
||||
title:
|
||||
type: string
|
||||
description:
|
||||
type: string
|
||||
appLink:
|
||||
type: string
|
||||
required:
|
||||
- items
|
|
@ -1,36 +0,0 @@
|
|||
title: Get categories response
|
||||
type: object
|
||||
properties:
|
||||
response:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
deprecated: true
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
title:
|
||||
type: string
|
||||
count:
|
||||
type: number
|
||||
required:
|
||||
- id
|
||||
- title
|
||||
- count
|
||||
items:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
title:
|
||||
type: string
|
||||
count:
|
||||
type: number
|
||||
required:
|
||||
- id
|
||||
- title
|
||||
- count
|
||||
required:
|
||||
- items
|
|
@ -1,14 +0,0 @@
|
|||
title: Get Packages response
|
||||
type: object
|
||||
properties:
|
||||
response:
|
||||
type: array
|
||||
deprecated: true
|
||||
items:
|
||||
$ref: ./search_result.yaml
|
||||
items:
|
||||
type: array
|
||||
items:
|
||||
$ref: ./search_result.yaml
|
||||
required:
|
||||
- items
|
|
@ -1,29 +0,0 @@
|
|||
title: Install Result
|
||||
type: object
|
||||
properties:
|
||||
assets:
|
||||
type: array
|
||||
items: []
|
||||
status:
|
||||
type: string
|
||||
enum:
|
||||
- installed
|
||||
- already_installed
|
||||
error:
|
||||
type: object
|
||||
properties:
|
||||
name:
|
||||
type: string
|
||||
message:
|
||||
type: string
|
||||
stack:
|
||||
type: string
|
||||
installType:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
enum:
|
||||
- metrics
|
||||
- logs
|
||||
required:
|
||||
- installType
|
|
@ -1,130 +0,0 @@
|
|||
title: Installation info object
|
||||
type: object
|
||||
properties:
|
||||
type:
|
||||
type: string
|
||||
created_at:
|
||||
type: string
|
||||
updated_at:
|
||||
type: string
|
||||
namespaces:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
installed_kibana:
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
type:
|
||||
$ref: ./kibana_saved_object_type.yaml
|
||||
installed_es:
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
deferred:
|
||||
type: boolean
|
||||
type:
|
||||
$ref: ./elasticsearch_asset_type.yaml
|
||||
name:
|
||||
type: string
|
||||
version:
|
||||
type: string
|
||||
install_status:
|
||||
type: string
|
||||
enum:
|
||||
- installed
|
||||
- installing
|
||||
- install_failed
|
||||
install_source:
|
||||
type: string
|
||||
enum:
|
||||
- registry
|
||||
- upload
|
||||
- bundled
|
||||
install_kibana_space_id:
|
||||
type: string
|
||||
install_format_schema_version:
|
||||
type: string
|
||||
latest_install_failed_attempts:
|
||||
description: Latest failed install errors
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
created_at:
|
||||
type: string
|
||||
target_version:
|
||||
type: string
|
||||
error:
|
||||
type: object
|
||||
properties:
|
||||
name:
|
||||
type: string
|
||||
message:
|
||||
type: string
|
||||
stack:
|
||||
type: string
|
||||
latest_executed_state:
|
||||
description: Latest successfully executed state in package install state machine
|
||||
type: object
|
||||
properties:
|
||||
name:
|
||||
type: string
|
||||
enum:
|
||||
- create_restart_installation
|
||||
- install_kibana_assets
|
||||
- install_ilm_policies
|
||||
- install_ml_model
|
||||
- install_index_template_pipelines
|
||||
- remove_legacy_templates
|
||||
- update_current_write_indices
|
||||
- install_transforms
|
||||
- delete_previous_pipelines
|
||||
- save_archive_entries_from_assets_map
|
||||
- update_so
|
||||
started_at:
|
||||
type: string
|
||||
error:
|
||||
type: string
|
||||
verification_status:
|
||||
type: string
|
||||
enum:
|
||||
- verified
|
||||
- unverified
|
||||
- unknown
|
||||
verification_key_id:
|
||||
type: string
|
||||
nullable: true
|
||||
experimental_data_stream_features:
|
||||
type: array
|
||||
properties:
|
||||
data_stream:
|
||||
type: string
|
||||
features:
|
||||
type: object
|
||||
properties:
|
||||
synthetic_source:
|
||||
type: boolean
|
||||
nullable: true
|
||||
tsdb:
|
||||
type: boolean
|
||||
nullable: true
|
||||
doc_value_only_numeric:
|
||||
type: boolean
|
||||
nullable: true
|
||||
doc_value_only_other:
|
||||
type: boolean
|
||||
nullable: true
|
||||
required:
|
||||
- installed_kibana
|
||||
- installed_es
|
||||
- name
|
||||
- version
|
||||
- install_status
|
||||
- install_version
|
||||
- install_started_at
|
||||
- install_source
|
||||
- verification_status
|
||||
- latest_install_failed_attempts
|
|
@ -1,12 +0,0 @@
|
|||
title: Kibana saved object asset type
|
||||
type: string
|
||||
enum:
|
||||
- dashboard
|
||||
- visualization
|
||||
- search
|
||||
- index-pattern
|
||||
- map
|
||||
- lens
|
||||
- ml-module
|
||||
- security-rule
|
||||
- csp_rule_template
|
|
@ -1,64 +0,0 @@
|
|||
title: New package policy
|
||||
type: object
|
||||
description: ''
|
||||
properties:
|
||||
enabled:
|
||||
type: boolean
|
||||
package:
|
||||
type: object
|
||||
properties:
|
||||
name:
|
||||
type: string
|
||||
version:
|
||||
type: string
|
||||
title:
|
||||
type: string
|
||||
requires_root:
|
||||
type: boolean
|
||||
required:
|
||||
- name
|
||||
- version
|
||||
namespace:
|
||||
type: string
|
||||
output_id:
|
||||
type: string
|
||||
inputs:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
type:
|
||||
type: string
|
||||
enabled:
|
||||
type: boolean
|
||||
processors:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
streams:
|
||||
type: array
|
||||
items: {}
|
||||
config:
|
||||
type: object
|
||||
vars:
|
||||
type: object
|
||||
required:
|
||||
- type
|
||||
- enabled
|
||||
policy_id:
|
||||
type: string
|
||||
nullable: true
|
||||
deprecated: true
|
||||
policy_ids:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
name:
|
||||
type: string
|
||||
description:
|
||||
type: string
|
||||
overrides:
|
||||
type: object
|
||||
required:
|
||||
- inputs
|
||||
- name
|
|
@ -1,13 +0,0 @@
|
|||
title: Output
|
||||
oneOf:
|
||||
- $ref: './output_create_request_elasticsearch.yaml'
|
||||
- $ref: './output_create_request_kafka.yaml'
|
||||
- $ref: './output_create_request_logstash.yaml'
|
||||
- $ref: './output_create_request_remote_elasticsearch.yaml'
|
||||
discriminator:
|
||||
propertyName: type
|
||||
mapping:
|
||||
elasticsearch: './output_create_request_elasticsearch.yaml'
|
||||
kafka: './output_create_request_kafka.yaml'
|
||||
logstash: './output_create_request_logstash.yaml'
|
||||
remote_elasticsearch: './output_create_request_remote_elasticsearch.yaml'
|
|
@ -1,63 +0,0 @@
|
|||
title: elasticsearch
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
is_default:
|
||||
type: boolean
|
||||
is_default_monitoring:
|
||||
type: boolean
|
||||
is_internal:
|
||||
type: boolean
|
||||
name:
|
||||
type: string
|
||||
type:
|
||||
type: string
|
||||
enum: ['elasticsearch']
|
||||
hosts:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
ca_sha256:
|
||||
type: string
|
||||
ca_trusted_fingerprint:
|
||||
type: string
|
||||
config:
|
||||
type: object
|
||||
preset:
|
||||
type: string
|
||||
enum: ['balanced', 'custom', 'throughput', 'scale', 'latency']
|
||||
config_yaml:
|
||||
type: string
|
||||
ssl:
|
||||
type: object
|
||||
properties:
|
||||
certificate_authorities:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
certificate:
|
||||
type: string
|
||||
key:
|
||||
type: string
|
||||
proxy_id:
|
||||
type: string
|
||||
shipper:
|
||||
type: object
|
||||
properties:
|
||||
disk_queue_enabled:
|
||||
type: boolean
|
||||
disk_queue_path:
|
||||
type: string
|
||||
disk_queue_max_size:
|
||||
type: number
|
||||
disk_queue_encryption_enabled:
|
||||
type: boolean
|
||||
disk_queue_compression_enabled:
|
||||
type: boolean
|
||||
compression_level:
|
||||
type: number
|
||||
loadbalance:
|
||||
type: boolean
|
||||
required:
|
||||
- name
|
|
@ -1,149 +0,0 @@
|
|||
title: kafka
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
is_default:
|
||||
type: boolean
|
||||
is_default_monitoring:
|
||||
type: boolean
|
||||
is_internal:
|
||||
type: boolean
|
||||
name:
|
||||
type: string
|
||||
type:
|
||||
type: string
|
||||
enum: ['kafka']
|
||||
hosts:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
ca_sha256:
|
||||
type: string
|
||||
ca_trusted_fingerprint:
|
||||
type: string
|
||||
config:
|
||||
type: object
|
||||
config_yaml:
|
||||
type: string
|
||||
ssl:
|
||||
type: object
|
||||
properties:
|
||||
certificate_authorities:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
certificate:
|
||||
type: string
|
||||
key:
|
||||
type: string
|
||||
verification_mode:
|
||||
type: string
|
||||
enum: ['none', 'full', 'certificate', 'strict']
|
||||
proxy_id:
|
||||
type: string
|
||||
shipper:
|
||||
type: object
|
||||
properties:
|
||||
disk_queue_enabled:
|
||||
type: boolean
|
||||
disk_queue_path:
|
||||
type: string
|
||||
disk_queue_max_size:
|
||||
type: number
|
||||
disk_queue_encryption_enabled:
|
||||
type: boolean
|
||||
disk_queue_compression_enabled:
|
||||
type: boolean
|
||||
compression_level:
|
||||
type: number
|
||||
loadbalance:
|
||||
type: boolean
|
||||
version:
|
||||
type: string
|
||||
key:
|
||||
type: string
|
||||
compression:
|
||||
type: string
|
||||
compression_level:
|
||||
type: number
|
||||
client_id:
|
||||
type: string
|
||||
auth_type:
|
||||
type: string
|
||||
connection_type:
|
||||
type: string
|
||||
enum: ['plaintext', 'encryption']
|
||||
username:
|
||||
type: string
|
||||
password:
|
||||
type: string
|
||||
sasl:
|
||||
type: object
|
||||
properties:
|
||||
mechanism:
|
||||
type: string
|
||||
partition:
|
||||
type: string
|
||||
random:
|
||||
type: object
|
||||
properties:
|
||||
group_events:
|
||||
type: number
|
||||
round_robin:
|
||||
type: object
|
||||
properties:
|
||||
group_events:
|
||||
type: number
|
||||
topic:
|
||||
type: string
|
||||
topics:
|
||||
deprecated: true
|
||||
description: Use topic instead.
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
topic:
|
||||
type: string
|
||||
when:
|
||||
deprecated: true
|
||||
description: Deprecated, kafka output do not support conditionnal topics anymore.
|
||||
type: object
|
||||
properties:
|
||||
type:
|
||||
type: string
|
||||
condition:
|
||||
type: string
|
||||
headers:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
key:
|
||||
type: string
|
||||
value:
|
||||
type: string
|
||||
timeout:
|
||||
type: number
|
||||
broker_timeout:
|
||||
type: number
|
||||
required_acks:
|
||||
type: number
|
||||
secrets:
|
||||
type: object
|
||||
properties:
|
||||
password:
|
||||
type: string
|
||||
ssl:
|
||||
type: object
|
||||
properties:
|
||||
key:
|
||||
type: string
|
||||
|
||||
required:
|
||||
- name
|
||||
- type
|
||||
- topics
|
||||
- auth_type
|
||||
- hosts
|
|
@ -1,70 +0,0 @@
|
|||
title: logstash
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
is_default:
|
||||
type: boolean
|
||||
is_default_monitoring:
|
||||
type: boolean
|
||||
is_internal:
|
||||
type: boolean
|
||||
name:
|
||||
type: string
|
||||
type:
|
||||
type: string
|
||||
enum: ['logstash']
|
||||
hosts:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
ca_sha256:
|
||||
type: string
|
||||
ca_trusted_fingerprint:
|
||||
type: string
|
||||
config:
|
||||
type: object
|
||||
config_yaml:
|
||||
type: string
|
||||
ssl:
|
||||
type: object
|
||||
properties:
|
||||
certificate_authorities:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
certificate:
|
||||
type: string
|
||||
key:
|
||||
type: string
|
||||
proxy_id:
|
||||
type: string
|
||||
shipper:
|
||||
type: object
|
||||
properties:
|
||||
disk_queue_enabled:
|
||||
type: boolean
|
||||
disk_queue_path:
|
||||
type: string
|
||||
disk_queue_max_size:
|
||||
type: number
|
||||
disk_queue_encryption_enabled:
|
||||
type: boolean
|
||||
disk_queue_compression_enabled:
|
||||
type: boolean
|
||||
compression_level:
|
||||
type: number
|
||||
loadbalance:
|
||||
type: boolean
|
||||
secrets:
|
||||
type: object
|
||||
properties:
|
||||
ssl:
|
||||
type: object
|
||||
properties:
|
||||
key:
|
||||
type: string
|
||||
required:
|
||||
- name
|
||||
- hosts
|
||||
- type
|
|
@ -1,29 +0,0 @@
|
|||
title: remote_elasticsearch
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
is_default:
|
||||
type: boolean
|
||||
is_default_monitoring:
|
||||
type: boolean
|
||||
is_internal:
|
||||
type: boolean
|
||||
name:
|
||||
type: string
|
||||
type:
|
||||
type: string
|
||||
enum: ['remote_elasticsearch']
|
||||
hosts:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
service_token:
|
||||
type: string
|
||||
secrets:
|
||||
type: object
|
||||
properties:
|
||||
service_token:
|
||||
type: string
|
||||
required:
|
||||
- name
|
|
@ -1,11 +0,0 @@
|
|||
title: Output
|
||||
oneOf:
|
||||
- $ref: './output_update_request_elasticsearch.yaml'
|
||||
- $ref: './output_update_request_kafka.yaml'
|
||||
- $ref: './output_update_request_logstash.yaml'
|
||||
discriminator:
|
||||
propertyName: type
|
||||
mapping:
|
||||
elasticsearch: './output_update_request_elasticsearch.yaml'
|
||||
kafka: './output_update_request_kafka.yaml'
|
||||
logstash: './output_update_request_logstash.yaml'
|
|
@ -1,65 +0,0 @@
|
|||
title: elasticsearch
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
is_default:
|
||||
type: boolean
|
||||
is_default_monitoring:
|
||||
type: boolean
|
||||
is_internal:
|
||||
type: boolean
|
||||
name:
|
||||
type: string
|
||||
type:
|
||||
type: string
|
||||
enum: ['elasticsearch']
|
||||
hosts:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
ca_sha256:
|
||||
type: string
|
||||
ca_trusted_fingerprint:
|
||||
type: string
|
||||
config:
|
||||
type: object
|
||||
preset:
|
||||
type: string
|
||||
enum: ['balanced', 'custom', 'throughput', 'scale', 'latency']
|
||||
config_yaml:
|
||||
type: string
|
||||
ssl:
|
||||
type: object
|
||||
properties:
|
||||
certificate_authorities:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
certificate:
|
||||
type: string
|
||||
key:
|
||||
type: string
|
||||
proxy_id:
|
||||
type: string
|
||||
shipper:
|
||||
type: object
|
||||
properties:
|
||||
disk_queue_enabled:
|
||||
type: boolean
|
||||
disk_queue_path:
|
||||
type: string
|
||||
disk_queue_max_size:
|
||||
type: number
|
||||
disk_queue_encryption_enabled:
|
||||
type: boolean
|
||||
disk_queue_compression_enabled:
|
||||
type: boolean
|
||||
compression_level:
|
||||
type: number
|
||||
loadbalance:
|
||||
type: boolean
|
||||
required:
|
||||
- name
|
||||
- hosts
|
||||
- type
|
|
@ -1,134 +0,0 @@
|
|||
title: kafka
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
is_default:
|
||||
type: boolean
|
||||
is_default_monitoring:
|
||||
type: boolean
|
||||
is_internal:
|
||||
type: boolean
|
||||
name:
|
||||
type: string
|
||||
type:
|
||||
type: string
|
||||
enum: ['kafka']
|
||||
hosts:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
ca_sha256:
|
||||
type: string
|
||||
ca_trusted_fingerprint:
|
||||
type: string
|
||||
config:
|
||||
type: object
|
||||
config_yaml:
|
||||
type: string
|
||||
ssl:
|
||||
type: object
|
||||
properties:
|
||||
certificate_authorities:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
certificate:
|
||||
type: string
|
||||
key:
|
||||
type: string
|
||||
verification_mode:
|
||||
type: string
|
||||
enum: ['none', 'full', 'certificate', 'strict']
|
||||
proxy_id:
|
||||
type: string
|
||||
shipper:
|
||||
type: object
|
||||
properties:
|
||||
disk_queue_enabled:
|
||||
type: boolean
|
||||
disk_queue_path:
|
||||
type: string
|
||||
disk_queue_max_size:
|
||||
type: number
|
||||
disk_queue_encryption_enabled:
|
||||
type: boolean
|
||||
disk_queue_compression_enabled:
|
||||
type: boolean
|
||||
compression_level:
|
||||
type: number
|
||||
loadbalance:
|
||||
type: boolean
|
||||
version:
|
||||
type: string
|
||||
key:
|
||||
type: string
|
||||
compression:
|
||||
type: string
|
||||
compression_level:
|
||||
type: number
|
||||
client_id:
|
||||
type: string
|
||||
auth_type:
|
||||
type: string
|
||||
connection_type:
|
||||
type: string
|
||||
enum: ['plaintext', 'encryption']
|
||||
username:
|
||||
type: string
|
||||
password:
|
||||
type: string
|
||||
sasl:
|
||||
type: object
|
||||
properties:
|
||||
mechanism:
|
||||
type: string
|
||||
partition:
|
||||
type: string
|
||||
random:
|
||||
type: object
|
||||
properties:
|
||||
group_events:
|
||||
type: number
|
||||
round_robin:
|
||||
type: object
|
||||
properties:
|
||||
group_events:
|
||||
type: number
|
||||
topic:
|
||||
type: string
|
||||
topics:
|
||||
deprecated: true
|
||||
description: Use topic instead.
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
topic:
|
||||
type: string
|
||||
when:
|
||||
deprecated: true
|
||||
description: Deprecated, kafka output do not support conditionnal topics anymore.
|
||||
type: object
|
||||
properties:
|
||||
type:
|
||||
type: string
|
||||
condition:
|
||||
type: string
|
||||
headers:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
key:
|
||||
type: string
|
||||
value:
|
||||
type: string
|
||||
timeout:
|
||||
type: number
|
||||
broker_timeout:
|
||||
type: number
|
||||
required_acks:
|
||||
type: number
|
||||
required:
|
||||
- name
|
|
@ -1,60 +0,0 @@
|
|||
title: logstash
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
is_default:
|
||||
type: boolean
|
||||
is_default_monitoring:
|
||||
type: boolean
|
||||
is_internal:
|
||||
type: boolean
|
||||
name:
|
||||
type: string
|
||||
type:
|
||||
type: string
|
||||
enum: ['logstash']
|
||||
hosts:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
ca_sha256:
|
||||
type: string
|
||||
ca_trusted_fingerprint:
|
||||
type: string
|
||||
config:
|
||||
type: object
|
||||
config_yaml:
|
||||
type: string
|
||||
ssl:
|
||||
type: object
|
||||
properties:
|
||||
certificate_authorities:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
certificate:
|
||||
type: string
|
||||
key:
|
||||
type: string
|
||||
proxy_id:
|
||||
type: string
|
||||
shipper:
|
||||
type: object
|
||||
properties:
|
||||
disk_queue_enabled:
|
||||
type: boolean
|
||||
disk_queue_path:
|
||||
type: string
|
||||
disk_queue_max_size:
|
||||
type: number
|
||||
disk_queue_encryption_enabled:
|
||||
type: boolean
|
||||
disk_queue_compression_enabled:
|
||||
type: boolean
|
||||
compression_level:
|
||||
type: number
|
||||
loadbalance:
|
||||
type: boolean
|
||||
required:
|
||||
- name
|
|
@ -1,145 +0,0 @@
|
|||
title: Package information
|
||||
type: object
|
||||
properties:
|
||||
name:
|
||||
type: string
|
||||
title:
|
||||
type: string
|
||||
version:
|
||||
type: string
|
||||
release:
|
||||
type: string
|
||||
deprecated: true
|
||||
description: release label is deprecated, derive from the version instead (packages follow semver)
|
||||
enum:
|
||||
- experimental
|
||||
- beta
|
||||
- ga
|
||||
source:
|
||||
type: object
|
||||
properties:
|
||||
license:
|
||||
type: string
|
||||
enum:
|
||||
- Apache-2.0
|
||||
- Elastic-2.0
|
||||
readme:
|
||||
type: string
|
||||
description:
|
||||
type: string
|
||||
type:
|
||||
type: string
|
||||
categories:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
conditions:
|
||||
type: object
|
||||
properties:
|
||||
kibana:
|
||||
type: object
|
||||
properties:
|
||||
versions:
|
||||
type: string
|
||||
elasticsearch:
|
||||
type: object
|
||||
properties:
|
||||
subscription:
|
||||
type: string
|
||||
enum:
|
||||
- basic
|
||||
- gold
|
||||
- platinum
|
||||
- enterprise
|
||||
screenshots:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
src:
|
||||
type: string
|
||||
path:
|
||||
type: string
|
||||
title:
|
||||
type: string
|
||||
size:
|
||||
type: string
|
||||
type:
|
||||
type: string
|
||||
required:
|
||||
- src
|
||||
- path
|
||||
icons:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
assets:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
internal:
|
||||
type: boolean
|
||||
format_version:
|
||||
type: string
|
||||
data_streams:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
title:
|
||||
type: string
|
||||
name:
|
||||
type: string
|
||||
release:
|
||||
type: string
|
||||
ingeset_pipeline:
|
||||
type: string
|
||||
vars:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
name:
|
||||
type: string
|
||||
default:
|
||||
type: string
|
||||
required:
|
||||
- name
|
||||
- default
|
||||
type:
|
||||
type: string
|
||||
package:
|
||||
type: string
|
||||
required:
|
||||
- title
|
||||
- name
|
||||
- release
|
||||
- ingeset_pipeline
|
||||
- type
|
||||
- package
|
||||
download:
|
||||
type: string
|
||||
path:
|
||||
type: string
|
||||
elasticsearch:
|
||||
type: object
|
||||
properties:
|
||||
privileges:
|
||||
type: object
|
||||
properties:
|
||||
cluster:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
required:
|
||||
- name
|
||||
- title
|
||||
- version
|
||||
- description
|
||||
- type
|
||||
- categories
|
||||
- conditions
|
||||
- assets
|
||||
- format_version
|
||||
- download
|
||||
- path
|
|
@ -1,17 +0,0 @@
|
|||
title: Package policy
|
||||
allOf:
|
||||
- type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
revision:
|
||||
type: number
|
||||
inputs:
|
||||
oneOf:
|
||||
- type: array
|
||||
items: {}
|
||||
- type: object
|
||||
required:
|
||||
- id
|
||||
- revision
|
||||
- $ref: ./new_package_policy.yaml
|
|
@ -1,102 +0,0 @@
|
|||
title: Package Policy Request
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
description: Package policy unique identifier
|
||||
name:
|
||||
type: string
|
||||
description: Package policy name (should be unique)
|
||||
example: nginx-123
|
||||
description:
|
||||
type: string
|
||||
description: Package policy description
|
||||
example: 'my description'
|
||||
namespace:
|
||||
type: string
|
||||
description: The package policy namespace. Leave blank to inherit the agent policy's namespace.
|
||||
example: 'customnamespace'
|
||||
output_id:
|
||||
type: string
|
||||
description: Output ID to send package data to
|
||||
example: 'output-id'
|
||||
nullable: true
|
||||
policy_id:
|
||||
type: string
|
||||
description: Agent policy ID where that package policy will be added
|
||||
example: 'agent-policy-id'
|
||||
deprecated: true
|
||||
nullable: true
|
||||
policy_ids:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
description: Agent policy IDs where that package policy will be added
|
||||
example: ['agent-policy-id']
|
||||
package:
|
||||
type: object
|
||||
properties:
|
||||
name:
|
||||
type: string
|
||||
description: Package name
|
||||
example: 'nginx'
|
||||
version:
|
||||
type: string
|
||||
description: Package version
|
||||
example: '1.6.0'
|
||||
required:
|
||||
- name
|
||||
- version
|
||||
vars:
|
||||
type: object
|
||||
description: Package root level variable (see integration documentation for more information)
|
||||
inputs:
|
||||
type: object
|
||||
description: Package policy inputs (see integration documentation to know what inputs are available)
|
||||
example:
|
||||
nginx-logfile:
|
||||
enabled: true
|
||||
streams:
|
||||
nginx.access:
|
||||
enabled: true
|
||||
vars:
|
||||
paths:
|
||||
- '/var/log/nginx/access.log*'
|
||||
tags:
|
||||
- nginx-access
|
||||
preserve_original_event: false
|
||||
ignore_older: 72h
|
||||
additionalProperties:
|
||||
type: object
|
||||
properties:
|
||||
enabled:
|
||||
type: boolean
|
||||
description: enable or disable that input, (default to true)
|
||||
vars:
|
||||
type: object
|
||||
description: Input level variable (see integration documentation for more information)
|
||||
streams:
|
||||
type: object
|
||||
description: Input streams (see integration documentation to know what streams are available)
|
||||
additionalProperties:
|
||||
type: object
|
||||
properties:
|
||||
enabled:
|
||||
type: boolean
|
||||
description: enable or disable that stream, (default to true)
|
||||
vars:
|
||||
type: object
|
||||
description: Stream level variable (see integration documentation for more information)
|
||||
overrides:
|
||||
type: object
|
||||
properties:
|
||||
inputs:
|
||||
type: object
|
||||
description: Override settings that are defined in the package policy. The override option should be used only in unusual circumstances and not as a routine procedure.
|
||||
nullable: true
|
||||
force:
|
||||
type: boolean
|
||||
description: Force package policy creation even if package is not verified, or if the agent policy is managed.
|
||||
required:
|
||||
- name
|
||||
- package
|
|
@ -1,7 +0,0 @@
|
|||
title: Package usage stats
|
||||
type: object
|
||||
properties:
|
||||
agent_policy_count:
|
||||
type: integer
|
||||
required:
|
||||
- agent_policy_count
|
|
@ -1,20 +0,0 @@
|
|||
title: Fleet Proxy
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
name:
|
||||
type: string
|
||||
url:
|
||||
type: string
|
||||
proxy_headers:
|
||||
type: object
|
||||
certificate_authorities:
|
||||
type: string
|
||||
certificate:
|
||||
type: string
|
||||
certificate_key:
|
||||
type: string
|
||||
required:
|
||||
- name
|
||||
- url
|
|
@ -1,26 +0,0 @@
|
|||
title: Saved Object type
|
||||
oneOf:
|
||||
- type: string
|
||||
enum:
|
||||
- dashboard
|
||||
- visualization
|
||||
- search
|
||||
- index_pattern
|
||||
- map
|
||||
- lens
|
||||
- security_rule
|
||||
- csp_rule_template
|
||||
- ml_module
|
||||
- tag
|
||||
- osquery_pack_asset
|
||||
- osquery_saved_query
|
||||
- type: string
|
||||
enum:
|
||||
- index
|
||||
- component_template
|
||||
- ingest_pipeline
|
||||
- index_template
|
||||
- ilm_policy
|
||||
- transform
|
||||
- data_stream_ilm_policy
|
||||
- ml_model
|
|
@ -1,36 +0,0 @@
|
|||
title: Search result
|
||||
type: object
|
||||
properties:
|
||||
description:
|
||||
type: string
|
||||
download:
|
||||
type: string
|
||||
icons:
|
||||
type: string
|
||||
name:
|
||||
type: string
|
||||
path:
|
||||
type: string
|
||||
title:
|
||||
type: string
|
||||
type:
|
||||
type: string
|
||||
version:
|
||||
type: string
|
||||
status:
|
||||
type: string
|
||||
installationInfo:
|
||||
$ref: ./installation_info.yaml
|
||||
savedObject:
|
||||
type: object
|
||||
deprecated: true
|
||||
required:
|
||||
- description
|
||||
- download
|
||||
- icons
|
||||
- name
|
||||
- path
|
||||
- title
|
||||
- type
|
||||
- version
|
||||
- status
|
|
@ -1,17 +0,0 @@
|
|||
title: Settings
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
has_seen_add_data_notice:
|
||||
type: boolean
|
||||
fleet_server_hosts:
|
||||
deprecated: true
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
prerelease_integrations_enabled:
|
||||
type: boolean
|
||||
required:
|
||||
- fleet_server_hosts
|
||||
- id
|
|
@ -1,61 +0,0 @@
|
|||
title: Update package policy
|
||||
type: object
|
||||
description: ''
|
||||
properties:
|
||||
version:
|
||||
type: string
|
||||
enabled:
|
||||
type: boolean
|
||||
package:
|
||||
type: object
|
||||
properties:
|
||||
name:
|
||||
type: string
|
||||
version:
|
||||
type: string
|
||||
title:
|
||||
type: string
|
||||
required:
|
||||
- name
|
||||
- title
|
||||
- version
|
||||
namespace:
|
||||
type: string
|
||||
output_id:
|
||||
type: string
|
||||
inputs:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
type:
|
||||
type: string
|
||||
enabled:
|
||||
type: boolean
|
||||
processors:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
streams:
|
||||
type: array
|
||||
items: {}
|
||||
config:
|
||||
type: object
|
||||
vars:
|
||||
type: object
|
||||
required:
|
||||
- type
|
||||
- enabled
|
||||
- streams
|
||||
policy_id:
|
||||
type: string
|
||||
name:
|
||||
type: string
|
||||
description:
|
||||
type: string
|
||||
force:
|
||||
type: boolean
|
||||
required:
|
||||
- name
|
||||
- policy_id
|
||||
- enabled
|
|
@ -1,15 +0,0 @@
|
|||
title: Upgrade agent
|
||||
type: object
|
||||
properties:
|
||||
version:
|
||||
type: string
|
||||
source_uri:
|
||||
type: string
|
||||
force:
|
||||
type: boolean
|
||||
description: Force upgrade, skipping validation (should be used with caution)
|
||||
skipRateLimitCheck:
|
||||
type: boolean
|
||||
description: Skip rate limit check for upgrade
|
||||
required:
|
||||
- version
|
|
@ -1,6 +0,0 @@
|
|||
title: Package policy Upgrade dryrun
|
||||
type: array
|
||||
items:
|
||||
type: array
|
||||
items:
|
||||
$ref: ./full_agent_policy_input.yaml
|
|
@ -1,23 +0,0 @@
|
|||
title: Package policy Upgrade dryrun
|
||||
type: array
|
||||
items:
|
||||
allOf:
|
||||
- $ref: ./package_policy.yaml
|
||||
- type: object
|
||||
allOf:
|
||||
- $ref: ./new_package_policy.yaml
|
||||
- type: object
|
||||
properties:
|
||||
errors:
|
||||
type: array
|
||||
items:
|
||||
type: object
|
||||
properties:
|
||||
key:
|
||||
type: string
|
||||
message:
|
||||
type: string
|
||||
missingVars:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
|
@ -1,12 +0,0 @@
|
|||
title: Upgrade managed package policies result
|
||||
type: object
|
||||
properties:
|
||||
packagePolicyId:
|
||||
type: string
|
||||
diff:
|
||||
# type:
|
||||
errors:
|
||||
type: any
|
||||
required:
|
||||
- packagePolicyId
|
||||
- errors
|
|
@ -1,217 +0,0 @@
|
|||
openapi: 3.0.0
|
||||
tags:
|
||||
- name: Data streams
|
||||
- name: Elastic Agents
|
||||
- name: Elastic Agent actions
|
||||
- name: Elastic Agent binary download sources
|
||||
- name: Elastic Agent policies
|
||||
- name: Elastic Agent status
|
||||
- name: Elastic Package Manager (EPM)
|
||||
- name: Fleet enrollment API keys
|
||||
- name: Fleet internals
|
||||
- name: Fleet Server hosts
|
||||
- name: Fleet Kubernetes
|
||||
- name: Fleet outputs
|
||||
- name: Fleet package policies
|
||||
- name: Fleet proxies
|
||||
- name: Fleet service tokens
|
||||
- name: Fleet uninstall tokens
|
||||
info:
|
||||
title: Fleet
|
||||
description: OpenAPI schema for Fleet API endpoints
|
||||
version: '0.2'
|
||||
contact:
|
||||
name: Fleet Team
|
||||
license:
|
||||
name: Elastic License 2.0
|
||||
url: https://www.elastic.co/licensing/elastic-license
|
||||
servers:
|
||||
- url: 'http://KIBANA_HOST:5601'
|
||||
paths:
|
||||
# Fleet internals
|
||||
/api/fleet/health_check:
|
||||
$ref: paths/health_check.yaml
|
||||
/api/fleet/setup:
|
||||
$ref: paths/setup.yaml
|
||||
/api/fleet/settings:
|
||||
$ref: paths/settings.yaml
|
||||
# /internal/fleet/settings/enrollment:
|
||||
# servers:
|
||||
# - url: 'http://KIBANA_HOST:5601/internal/fleet'
|
||||
# description: Used for Fleet internals and not supported
|
||||
# $ref: paths/settings_enrollment.yaml
|
||||
/api/fleet/service-tokens:
|
||||
$ref: paths/service_tokens_deprecated.yaml
|
||||
/api/fleet/service_tokens:
|
||||
$ref: paths/service_tokens.yaml
|
||||
|
||||
# EPM / integrations endpoints
|
||||
/api/fleet/epm/verification_key_id:
|
||||
$ref: paths/epm@verification_key_id.yaml
|
||||
/api/fleet/epm/bulk_assets:
|
||||
$ref: paths/epm@bulk_assets.yaml
|
||||
/api/fleet/epm/categories:
|
||||
$ref: paths/epm@categories.yaml
|
||||
/api/fleet/epm/packages/limited:
|
||||
$ref: paths/epm@limited_list.yaml
|
||||
/api/fleet/epm/packages:
|
||||
$ref: paths/epm@packages.yaml
|
||||
/api/fleet/epm/packages/_bulk:
|
||||
$ref: paths/epm@packages_bulk.yaml
|
||||
'/api/fleet/epm/packages/{pkgkey}':
|
||||
$ref: 'paths/epm@packages@{pkgkey}_deprecated.yaml'
|
||||
'/api/fleet/epm/packages/{pkgName}/{pkgVersion}':
|
||||
$ref: 'paths/epm@packages@{pkg_name}@{pkg_version}.yaml'
|
||||
'/api/fleet/epm/packages/{pkgName}/{pkgVersion}/transforms/authorize':
|
||||
$ref: 'paths/epm@packages@{pkg_name}@{pkg_version}@transforms@authorize.yaml'
|
||||
'/api/fleet/epm/packages/{pkgName}/{pkgVersion}/{filePath}':
|
||||
$ref: paths/epm@get_file.yaml
|
||||
'/api/fleet/epm/packages/{pkgName}/stats':
|
||||
$ref: 'paths/epm@packages@{pkg_name}@stats.yaml'
|
||||
'/api/fleet/epm/templates/{pkgName}/{pkgVersion}/inputs':
|
||||
$ref: 'paths/epm@templates@{pkg_name}@{pkg_version}@inputs.yaml'
|
||||
|
||||
# Agent endpoints
|
||||
/api/fleet/agents/setup:
|
||||
$ref: paths/agents@setup.yaml
|
||||
/api/fleet/agent-status:
|
||||
$ref: paths/agent_status_deprecated.yaml
|
||||
/api/fleet/agent_status:
|
||||
$ref: paths/agent_status.yaml
|
||||
/api/fleet/agent_status/data:
|
||||
$ref: paths/agent_status@data.yaml
|
||||
/api/fleet/agents:
|
||||
$ref: paths/agents.yaml
|
||||
/api/fleet/agents/bulk_upgrade:
|
||||
$ref: paths/agents@bulk_upgrade.yaml
|
||||
/api/fleet/agents/action_status:
|
||||
$ref: paths/agents@action_status.yaml
|
||||
'/api/fleet/agents/{agentId}':
|
||||
$ref: 'paths/agents@{agent_id}.yaml'
|
||||
'/api/fleet/agents/{agentId}/actions':
|
||||
$ref: 'paths/agents@{agent_id}@actions.yaml'
|
||||
'/api/fleet/agents/actions/{actionId}/cancel':
|
||||
$ref: 'paths/agents@actions@{action_id}@cancel.yaml'
|
||||
'/api/fleet/agents/files/{fileId}/{fileName}':
|
||||
$ref: 'paths/agents@files@{file_id}@{file_name}.yaml'
|
||||
'/api/fleet/agents/files/{fileId}':
|
||||
$ref: 'paths/agents@files@{file_id}.yaml'
|
||||
'/api/fleet/agents/{agentId}/reassign':
|
||||
$ref: 'paths/agents@{agent_id}@reassign.yaml'
|
||||
'/api/fleet/agents/{agentId}/unenroll':
|
||||
$ref: 'paths/agents@{agent_id}@unenroll.yaml'
|
||||
'/api/fleet/agents/{agentId}/upgrade':
|
||||
$ref: 'paths/agents@{agent_id}@upgrade.yaml'
|
||||
'/api/fleet/agents/{agentId}/uploads':
|
||||
$ref: 'paths/agents@{agent_id}@uploads.yaml'
|
||||
'/api/fleet/agents/bulk_reassign':
|
||||
$ref: 'paths/agents@bulk_reassign.yaml'
|
||||
'/api/fleet/agents/bulk_unenroll':
|
||||
$ref: 'paths/agents@bulk_unenroll.yaml'
|
||||
'/api/fleet/agents/bulk_update_agent_tags':
|
||||
$ref: 'paths/agents@bulk_update_tags.yaml'
|
||||
/api/fleet/agents/tags:
|
||||
$ref: paths/agent_tags.yaml
|
||||
'/api/fleet/agents/{agentId}/request_diagnostics':
|
||||
$ref: 'paths/agents@{agent_id}@request_diagnostics.yaml'
|
||||
/api/fleet/agents/bulk_request_diagnostics:
|
||||
$ref: 'paths/agents@bulk_request_diagnostics.yaml'
|
||||
|
||||
# Agent policies endpoints
|
||||
/api/fleet/agent_policies:
|
||||
$ref: paths/agent_policies.yaml
|
||||
'/api/fleet/agent_policies/{agentPolicyId}':
|
||||
$ref: 'paths/agent_policies@{agent_policy_id}.yaml'
|
||||
'/api/fleet/agent_policies/{agentPolicyId}/copy':
|
||||
$ref: 'paths/agent_policies@{agent_policy_id}@copy.yaml'
|
||||
'/api/fleet/agent_policies/{agentPolicyId}/full':
|
||||
$ref: 'paths/agent_policies@{agent_policy_id}@full.yaml'
|
||||
'/api/fleet/agent_policies/{agentPolicyId}/download':
|
||||
$ref: 'paths/agent_policies@{agent_policy_id}@download.yaml'
|
||||
/api/fleet/agent_policies/_bulk_get:
|
||||
$ref: paths/agent_policies@_bulk_get.yaml
|
||||
/api/fleet/agent_policies/delete:
|
||||
$ref: paths/agent_policies@delete.yaml
|
||||
|
||||
# Data streams endpoints
|
||||
/api/fleet/data_streams:
|
||||
$ref: paths/data_streams.yaml
|
||||
|
||||
# Enrollment endpoints
|
||||
/api/fleet/enrollment-api-keys:
|
||||
$ref: paths/enrollment_api_keys_deprecated.yaml
|
||||
'/api/fleet/enrollment-api-keys/{keyId}':
|
||||
$ref: 'paths/enrollment_api_keys@{key_id}_deprecated.yaml'
|
||||
/api/fleet/enrollment_api_keys:
|
||||
$ref: paths/enrollment_api_keys.yaml
|
||||
'/api/fleet/enrollment_api_keys/{keyId}':
|
||||
$ref: 'paths/enrollment_api_keys@{key_id}.yaml'
|
||||
|
||||
# Package policies endpoints
|
||||
/api/fleet/package_policies:
|
||||
$ref: paths/package_policies.yaml
|
||||
/api/fleet/package_policies/_bulk_get:
|
||||
$ref: paths/package_policies@_bulk_get.yaml
|
||||
/api/fleet/package_policies/delete:
|
||||
$ref: paths/package_policies@delete.yaml
|
||||
/api/fleet/package_policies/upgrade:
|
||||
$ref: paths/package_policies@upgrade.yaml
|
||||
/api/fleet/package_policies/upgrade/dryrun:
|
||||
$ref: paths/package_policies@upgrade_dryrun.yaml
|
||||
'/api/fleet/package_policies/{packagePolicyId}':
|
||||
$ref: 'paths/package_policies@{package_policy_id}.yaml'
|
||||
|
||||
# Outputs
|
||||
/api/fleet/outputs:
|
||||
$ref: paths/outputs.yaml
|
||||
'/api/fleet/outputs/{outputId}':
|
||||
$ref: paths/outputs@{output_id}.yaml
|
||||
'/api/fleet/outputs/{outputId}/health':
|
||||
$ref: paths/output_health@{output_id}.yaml
|
||||
/api/fleet/logstash_api_keys:
|
||||
$ref: paths/logstash_api_keys.yaml
|
||||
|
||||
# Agent binary download sources
|
||||
/api/fleet/agent_download_sources:
|
||||
$ref: paths/agent_download_sources.yaml
|
||||
'/api/fleet/agent_download_sources/{sourceId}':
|
||||
$ref: paths/agent_download_sources@{source_id}.yaml
|
||||
|
||||
# Fleet server hosts
|
||||
/api/fleet/fleet_server_hosts:
|
||||
$ref: paths/fleet_server_hosts.yaml
|
||||
'/api/fleet/fleet_server_hosts/{itemId}':
|
||||
$ref: paths/fleet_server_hosts@{item_id}.yaml
|
||||
|
||||
# Fleet proxies
|
||||
/api/fleet/proxies:
|
||||
$ref: paths/proxies.yaml
|
||||
'/api/fleet/proxies/{itemId}':
|
||||
$ref: paths/proxies@{item_id}.yaml
|
||||
|
||||
# K8s
|
||||
/api/fleet/kubernetes:
|
||||
$ref: paths/kubernetes.yaml
|
||||
|
||||
# Uninstall tokens
|
||||
/api/fleet/uninstall_tokens:
|
||||
$ref: paths/uninstall_tokens.yaml
|
||||
'/api/fleet/uninstall_tokens/{uninstallTokenId}':
|
||||
$ref: paths/uninstall_tokens@{uninstall_token_id}.yaml
|
||||
components:
|
||||
securitySchemes:
|
||||
basicAuth:
|
||||
type: http
|
||||
scheme: basic
|
||||
Enrollment_API_Key:
|
||||
name: Authorization
|
||||
type: apiKey
|
||||
in: header
|
||||
description: 'e.g. Authorization: ApiKey base64EnrollmentApiKey'
|
||||
Access_API_Key:
|
||||
name: Authorization
|
||||
type: apiKey
|
||||
in: header
|
||||
description: 'e.g. Authorization: ApiKey base64AccessApiKey'
|
||||
security:
|
||||
- basicAuth: []
|
|
@ -1,127 +0,0 @@
|
|||
Paths
|
||||
=====
|
||||
|
||||
Organize our path definitions within this folder. We will reference our paths from our main `openapi.json` entrypoint file.
|
||||
|
||||
It may help us to adopt some conventions:
|
||||
|
||||
* path separator token (e.g. `@`) or subfolders
|
||||
* path parameter (e.g. `{example}`)
|
||||
* file-per-path or file-per-operation
|
||||
|
||||
There are different benefits and drawbacks to each decision.
|
||||
|
||||
We can adopt any organization we wish. We have some tips for organizing paths based on common practices.
|
||||
|
||||
## Each path in a separate file
|
||||
|
||||
Use a predefined "path separator" and keep all of our path files in the top level of the `paths` folder.
|
||||
|
||||
```
|
||||
paths/
|
||||
├── README.md
|
||||
├── agent_policies.yaml
|
||||
├── agent_policies@delete.yaml
|
||||
├── agent_policies@{agent_policy_id}.yaml
|
||||
├── agent_policies@{agent_policy_id}@copy.yaml
|
||||
├── agent_status.yaml
|
||||
├── agents.yaml
|
||||
├── agents@bulk_upgrade.yaml
|
||||
├── agents@enroll.yaml
|
||||
├── agents@setup.yaml
|
||||
├── agents@{agent_id}.yaml
|
||||
├── agents@{agent_id}@unenroll.yaml
|
||||
├── agents@{agent_id}@upgrade.yaml
|
||||
├── enrollment_api_keys.yaml
|
||||
├── enrollment_api_keys@{key_id}.yaml
|
||||
├── epm@categories.yaml
|
||||
├── epm@packages.yaml
|
||||
├── epm@packages@{pkgkey}.yaml
|
||||
├── install@{os_type}.yaml
|
||||
├── package_policies.yaml
|
||||
├── package_policies@{package_policy_id}.yaml
|
||||
└── setup.yaml
|
||||
```
|
||||
|
||||
Redocly recommends using the `@` character for this case.
|
||||
|
||||
In addition, Redocly recommends placing path parameters within `{}` curly braces if we adopt this style.
|
||||
|
||||
#### Motivations
|
||||
|
||||
* Quickly see a list of all paths. Many people think in terms of the "number" of "endpoints" (paths), and not the "number" of "operations" (paths * http methods).
|
||||
|
||||
* Only the "file-per-path" option is semantically correct with the OpenAPI Specification 3.0.2. However, Redocly's openapi-cli will build valid bundles for any of the other options too.
|
||||
|
||||
|
||||
#### Drawbacks
|
||||
|
||||
* This may require multiple definitions per http method within a single file.
|
||||
* It requires settling on a path separator (that is allowed to be used in filenames) and sticking to that convention.
|
||||
|
||||
## Each operation in a separate file
|
||||
|
||||
We may also place each operation in a separate file.
|
||||
|
||||
In this case, if we want all paths at the top-level, we can concatenate the http method to the path name. Similar to the above option, we can
|
||||
|
||||
### Files at top-level of `paths`
|
||||
|
||||
We may name our files with some concatenation for the http method. For example, following a convention such as: `<path with allowed separator>-<http-method>.json`.
|
||||
|
||||
#### Motivations
|
||||
|
||||
* Quickly see all operations without needing to navigate subfolders.
|
||||
|
||||
#### Drawbacks
|
||||
|
||||
* Adopting an unusual path separator convention, instead of using subfolders.
|
||||
|
||||
### Use subfolders to mirror API path structure
|
||||
|
||||
Example:
|
||||
```
|
||||
GET /customers
|
||||
|
||||
/paths/customers/get.json
|
||||
```
|
||||
|
||||
In this case, the path id defined within subfolders which mirror the API URL structure.
|
||||
|
||||
Example with path parameter:
|
||||
```
|
||||
GET /customers/{id}
|
||||
|
||||
/paths/customers/{id}/get.json
|
||||
```
|
||||
|
||||
#### Motivations
|
||||
|
||||
It matches the URL structure.
|
||||
|
||||
It is pretty easy to reference:
|
||||
|
||||
```json
|
||||
paths:
|
||||
'/customers/{id}':
|
||||
get:
|
||||
$ref: ./paths/customers/{id}/get.json
|
||||
put:
|
||||
$ref: ./paths/customers/{id}/put.json
|
||||
```
|
||||
|
||||
#### Drawbacks
|
||||
|
||||
If we have a lot of nested folders, it may be confusing to reference our schemas.
|
||||
|
||||
Example
|
||||
```
|
||||
file: /paths/customers/{id}/timeline/{messageId}/get.json
|
||||
|
||||
# excerpt of file
|
||||
headers:
|
||||
Rate-Limit-Remaining:
|
||||
$ref: ../../../../../components/headers/Rate-Limit-Remaining.json
|
||||
|
||||
```
|
||||
Notice the `../../../../../` in the ref which requires some attention to formulate correctly. While openapi-cli has a linter which suggests possible refs when there is a mistake, this is still a net drawback for APIs with deep paths.
|
|
@ -1,60 +0,0 @@
|
|||
get:
|
||||
summary: List agent binary download sources
|
||||
tags:
|
||||
- Elastic Agent binary download sources
|
||||
responses:
|
||||
'200':
|
||||
description: OK
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
items:
|
||||
type: array
|
||||
items:
|
||||
$ref: ../components/schemas/download_sources.yaml
|
||||
total:
|
||||
type: integer
|
||||
page:
|
||||
type: integer
|
||||
perPage:
|
||||
type: integer
|
||||
'400':
|
||||
$ref: ../components/responses/error.yaml
|
||||
operationId: get-download-sources
|
||||
post:
|
||||
summary: Create agent binary download source
|
||||
tags:
|
||||
- Elastic Agent binary download sources
|
||||
responses:
|
||||
'200':
|
||||
description: OK
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
item:
|
||||
$ref: ../components/schemas/download_sources.yaml
|
||||
'400':
|
||||
$ref: ../components/responses/error.yaml
|
||||
requestBody:
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
name:
|
||||
type: string
|
||||
is_default:
|
||||
type: boolean
|
||||
host:
|
||||
type: string
|
||||
required:
|
||||
- name
|
||||
- host
|
||||
- is_default
|
||||
operationId: post-download-sources
|
|
@ -1,83 +0,0 @@
|
|||
get:
|
||||
summary: Get agent binary download source by ID
|
||||
tags:
|
||||
- Elastic Agent binary download sources
|
||||
responses:
|
||||
'200':
|
||||
description: OK
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
item:
|
||||
$ref: ../components/schemas/download_sources.yaml
|
||||
required:
|
||||
- item
|
||||
'400':
|
||||
$ref: ../components/responses/error.yaml
|
||||
operationId: get-one-download-source
|
||||
parameters:
|
||||
- schema:
|
||||
type: string
|
||||
name: sourceId
|
||||
in: path
|
||||
required: true
|
||||
delete:
|
||||
summary: Delete agent binary download source by ID
|
||||
tags:
|
||||
- Elastic Agent binary download sources
|
||||
operationId: delete-download-source
|
||||
responses:
|
||||
'200':
|
||||
description: OK
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
required:
|
||||
- id
|
||||
'400':
|
||||
$ref: ../components/responses/error.yaml
|
||||
parameters:
|
||||
- $ref: ../components/headers/kbn_xsrf.yaml
|
||||
put:
|
||||
summary: Update agent binary download source by ID
|
||||
tags:
|
||||
- Elastic Agent binary download sources
|
||||
operationId: update-download-source
|
||||
requestBody:
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
name:
|
||||
type: string
|
||||
is_default:
|
||||
type: boolean
|
||||
host:
|
||||
type: string
|
||||
required:
|
||||
- name
|
||||
- is_default
|
||||
- host
|
||||
responses:
|
||||
'200':
|
||||
description: OK
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
item:
|
||||
$ref: ../components/schemas/download_sources.yaml
|
||||
required:
|
||||
- item
|
||||
'400':
|
||||
$ref: ../components/responses/error.yaml
|
||||
parameters:
|
||||
- $ref: ../components/headers/kbn_xsrf.yaml
|
|
@ -1,72 +0,0 @@
|
|||
get:
|
||||
summary: List agent policies
|
||||
tags:
|
||||
- Elastic Agent policies
|
||||
responses:
|
||||
'200':
|
||||
description: OK
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
items:
|
||||
type: array
|
||||
items:
|
||||
$ref: ../components/schemas/agent_policy.yaml
|
||||
total:
|
||||
type: number
|
||||
page:
|
||||
type: number
|
||||
perPage:
|
||||
type: number
|
||||
required:
|
||||
- items
|
||||
- total
|
||||
- page
|
||||
- perPage
|
||||
'400':
|
||||
$ref: ../components/responses/error.yaml
|
||||
operationId: agent-policy-list
|
||||
parameters:
|
||||
- $ref: ../components/parameters/page_size.yaml
|
||||
- $ref: ../components/parameters/page_index.yaml
|
||||
- $ref: ../components/parameters/kuery.yaml
|
||||
- $ref: ../components/parameters/format.yaml
|
||||
- schema:
|
||||
type: boolean
|
||||
in: query
|
||||
name: full
|
||||
description: When set to true, retrieve the related package policies for each agent policy.
|
||||
- schema:
|
||||
type: boolean
|
||||
in: query
|
||||
name: noAgentCount
|
||||
description: When set to true, do not count how many agents are in the agent policy, this can improve performance if you are searching over a large number of agent policies. The "agents" property will always be 0 if set to true.
|
||||
|
||||
description: ''
|
||||
post:
|
||||
summary: Create agent policy
|
||||
tags:
|
||||
- Elastic Agent policies
|
||||
responses:
|
||||
'200':
|
||||
description: OK
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
item:
|
||||
$ref: ../components/schemas/agent_policy.yaml
|
||||
'400':
|
||||
$ref: ../components/responses/error.yaml
|
||||
operationId: create-agent-policy
|
||||
requestBody:
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: ../components/schemas/agent_policy_create_request.yaml
|
||||
security: []
|
||||
parameters:
|
||||
- $ref: ../components/headers/kbn_xsrf.yaml
|
|
@ -1,42 +0,0 @@
|
|||
post:
|
||||
summary: Bulk get agent policies
|
||||
tags:
|
||||
- Elastic Agent policies
|
||||
requestBody:
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
ids:
|
||||
type: array
|
||||
items:
|
||||
type: string
|
||||
description: list of agent policy ids
|
||||
full:
|
||||
type: boolean
|
||||
description: get full policies with package policies populated
|
||||
ignoreMissing:
|
||||
type: boolean
|
||||
required:
|
||||
- ids
|
||||
responses:
|
||||
'200':
|
||||
description: OK
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
items:
|
||||
type: array
|
||||
items:
|
||||
$ref: ../components/schemas/agent_policy.yaml
|
||||
required:
|
||||
- items
|
||||
'400':
|
||||
$ref: ../components/responses/error.yaml
|
||||
operationId: bulk-get-agent-policies
|
||||
security: []
|
||||
parameters:
|
||||
- $ref: ../components/parameters/format.yaml
|
|
@ -1,38 +0,0 @@
|
|||
post:
|
||||
summary: Delete agent policy by ID
|
||||
tags:
|
||||
- Elastic Agent policies
|
||||
operationId: delete-agent-policy
|
||||
responses:
|
||||
'200':
|
||||
description: OK
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
id:
|
||||
type: string
|
||||
success:
|
||||
type: boolean
|
||||
required:
|
||||
- id
|
||||
- success
|
||||
'400':
|
||||
$ref: ../components/responses/error.yaml
|
||||
requestBody:
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
agentPolicyId:
|
||||
type: string
|
||||
force:
|
||||
type: boolean
|
||||
description: bypass validation checks that can prevent agent policy deletion
|
||||
required:
|
||||
- agentPolicyId
|
||||
parameters:
|
||||
- $ref: ../components/headers/kbn_xsrf.yaml
|
||||
parameters: []
|
|
@ -1,54 +0,0 @@
|
|||
parameters:
|
||||
- schema:
|
||||
type: string
|
||||
name: agentPolicyId
|
||||
in: path
|
||||
required: true
|
||||
- $ref: ../components/parameters/format.yaml
|
||||
get:
|
||||
summary: Get agent policy by ID
|
||||
tags:
|
||||
- Elastic Agent policies
|
||||
responses:
|
||||
'200':
|
||||
description: OK
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
item:
|
||||
$ref: ../components/schemas/agent_policy.yaml
|
||||
required:
|
||||
- item
|
||||
'400':
|
||||
$ref: ../components/responses/error.yaml
|
||||
operationId: agent-policy-info
|
||||
description: Get one agent policy
|
||||
parameters: []
|
||||
put:
|
||||
summary: Update agent policy by ID
|
||||
tags:
|
||||
- Elastic Agent policies
|
||||
responses:
|
||||
'200':
|
||||
description: OK
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
item:
|
||||
$ref: ../components/schemas/agent_policy.yaml
|
||||
required:
|
||||
- item
|
||||
'400':
|
||||
$ref: ../components/responses/error.yaml
|
||||
operationId: update-agent-policy
|
||||
requestBody:
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
$ref: ../components/schemas/agent_policy_update_request.yaml
|
||||
parameters:
|
||||
- $ref: ../components/headers/kbn_xsrf.yaml
|
|
@ -1,41 +0,0 @@
|
|||
parameters:
|
||||
- schema:
|
||||
type: string
|
||||
name: agentPolicyId
|
||||
in: path
|
||||
required: true
|
||||
- $ref: ../components/parameters/format.yaml
|
||||
post:
|
||||
summary: Copy agent policy by ID
|
||||
tags:
|
||||
- Elastic Agent policies
|
||||
operationId: agent-policy-copy
|
||||
parameters:
|
||||
- $ref: ../components/headers/kbn_xsrf.yaml
|
||||
responses:
|
||||
'200':
|
||||
description: OK
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
item:
|
||||
$ref: ../components/schemas/agent_policy.yaml
|
||||
required:
|
||||
- item
|
||||
'400':
|
||||
$ref: ../components/responses/error.yaml
|
||||
requestBody:
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
name:
|
||||
type: string
|
||||
description:
|
||||
type: string
|
||||
required:
|
||||
- name
|
||||
description: ''
|
|
@ -1,38 +0,0 @@
|
|||
get:
|
||||
summary: Download agent policy by ID
|
||||
tags:
|
||||
- Elastic Agent policies
|
||||
operationId: agent-policy-download
|
||||
responses:
|
||||
'200':
|
||||
description: OK
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
item:
|
||||
type: string
|
||||
'400':
|
||||
$ref: ../components/responses/error.yaml
|
||||
parameters:
|
||||
- schema:
|
||||
type: string
|
||||
name: agentPolicyId
|
||||
in: path
|
||||
required: true
|
||||
- schema:
|
||||
type: string
|
||||
name: download
|
||||
in: query
|
||||
required: false
|
||||
- schema:
|
||||
type: string
|
||||
name: standalone
|
||||
in: query
|
||||
required: false
|
||||
- schema:
|
||||
type: string
|
||||
name: kubernetes
|
||||
in: query
|
||||
required: false
|
|
@ -1,40 +0,0 @@
|
|||
get:
|
||||
summary: Get full agent policy by ID
|
||||
tags:
|
||||
- Elastic Agent policies
|
||||
operationId: agent-policy-full
|
||||
responses:
|
||||
'200':
|
||||
description: OK
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
item:
|
||||
oneOf:
|
||||
- type: string
|
||||
- $ref: ../components/schemas/agent_policy_full.yaml
|
||||
'400':
|
||||
$ref: ../components/responses/error.yaml
|
||||
parameters:
|
||||
- schema:
|
||||
type: string
|
||||
name: agentPolicyId
|
||||
in: path
|
||||
required: true
|
||||
- schema:
|
||||
type: string
|
||||
name: download
|
||||
in: query
|
||||
required: false
|
||||
- schema:
|
||||
type: string
|
||||
name: standalone
|
||||
in: query
|
||||
required: false
|
||||
- schema:
|
||||
type: string
|
||||
name: kubernetes
|
||||
in: query
|
||||
required: false
|
|
@ -1,61 +0,0 @@
|
|||
get:
|
||||
summary: Get agent status summary
|
||||
tags:
|
||||
- Elastic Agent status
|
||||
responses:
|
||||
'200':
|
||||
description: OK
|
||||
content:
|
||||
application/json:
|
||||
schema:
|
||||
type: object
|
||||
properties:
|
||||
error:
|
||||
type: integer
|
||||
events:
|
||||
type: integer
|
||||
inactive:
|
||||
type: integer
|
||||
unenrolled:
|
||||
type: integer
|
||||
offline:
|
||||
type: integer
|
||||
online:
|
||||
type: integer
|
||||
other:
|
||||
type: integer
|
||||
total:
|
||||
type: integer
|
||||
deprecated: true
|
||||
updating:
|
||||
type: integer
|
||||
all:
|
||||
type: integer
|
||||
active:
|
||||
type: integer
|
||||
required:
|
||||
- active
|
||||
- all
|
||||
- error
|
||||
- events
|
||||
- inactive
|
||||
- offline
|
||||
- online
|
||||
- other
|
||||
- total
|
||||
- updating
|
||||
'400':
|
||||
$ref: ../components/responses/error.yaml
|
||||
operationId: get-agent-status
|
||||
parameters:
|
||||
- schema:
|
||||
type: string
|
||||
name: policyId
|
||||
in: query
|
||||
required: false
|
||||
- schema:
|
||||
type: string
|
||||
name: kuery
|
||||
in: query
|
||||
required: false
|
||||
deprecated: true
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue