This documentation contains work-in-progress information for future Elastic Stack and Cloud releases. Use the version selector to view supported release docs. It also contains some Elastic Cloud serverless information. Check out our serverless docs for more details.
Create pack API
editCreate pack API
edit[preview] This functionality is in technical preview and may be changed or removed in a future release. Elastic will work to fix any issues, but features in technical preview are not subject to the support SLA of official GA features. Create packs.
Request
editPOST <kibana host>:<port>/api/osquery/packs
POST <kibana host>:<port>/s/<space_id>/api/osquery/packs
Path parameters
edit-
space_id
-
(Optional, string) The space identifier. When
space_id
is not provided in the URL, the default space is used.
Request body
edit-
name
- (Required, string) The pack name.
-
description
- (Optional, string) The pack description.
-
enabled
- (Optional, boolean) Enables the pack.
-
policy_ids
- (Optional, array) A list of agents policy IDs.
-
shards
- (Optional, object) An object with shard configuration for policies included in the pack. For each policy, set the shard configuration to a percentage (1–100) of target hosts.
-
queries
- (Required, object) An object of queries.
Response code
edit-
200
- Indicates a successful call.
Examples
editCreate a pack:
$ curl -X POST api/osquery/packs \ { "name": "my_pack", "description": "My pack", "enabled": true, "policy_ids": [ "my_policy_id", "fleet-server-policy" ], "shards": { "my_policy_id": 35, "fleet-server-policy": 58 }, "queries": { "my_query": { "query": "SELECT * FROM listening_ports;", "interval": 60, "timeout": 120, "ecs_mapping": { "client.port": { "field": "port" }, "tags": { "value": [ "tag1", "tag2" ] } } } } }
The API returns the pack object:
{ "data": {...} }