---
title: "Install a Pack"
method: POST
path: "/packs"
tags: ["packs"]
---

# Install a Pack

`POST /packs`

Install a Pack.<br/><br/>To install an uploaded Pack, provide the <code>source</code> value from the <code>PUT /packs</code> response as the <code>source</code> parameter in the request body.<br/><br/>To install a Pack by importing from a URL, provide the direct URL location of the <code>.crbl</code> file for the Pack as the <code>source</code> parameter in the request body.<br/><br/>To install a Pack by importing from a Git repository, provide <code>git+&lt;repo-url&gt;</code> as the <code>source</code> parameter in the request body.<br/><br/>If you do not include the <code>source</code> parameter in the request body, an empty Pack is created.

## Request body

- union
  - object
    - `id` string, required — Unique identifier for the Pack.
    - `spec` string — Semver range constraint to apply when resolving the Pack version to install.
    - `version` string — Version of the Pack, following semantic versioning.
    - `minLogStreamVersion` string — Minimum version of Cribl Stream required to run this Pack.
    - `displayName` string — Human-readable display name for the Pack.
    - `author` string — Name or identifier of the Pack author.
    - `description` string — Brief description of the Pack and its purpose.
    - `source` string — Source of the Pack. Provide a staging source ID from <code>PUT /packs</code>, a direct URL to a <code>.crbl</code> file, or a <code>git+&lt;repo-url&gt;</code> Git repository URL. If omitted, an empty Pack is created.
    - `tags` object — Categorization tags for the Pack.
      - `dataType` string[] — List of data type tags for the Pack.
      - `domain` string[] — List of domain tags for the Pack.
      - `technology` string[] — List of technology tags for the Pack.
      - `streamtags` string[] — List of stream tags for routing and filtering.
    - `allowCustomFunctions` boolean — If <code>true</code> or omitted, allow the Pack to use custom JavaScript functions. If <code>false</code>, reject Packs that use custom JavaScript functions.
    - `force` boolean — If <code>true</code>, overwrite an existing Pack with the same ID. Otherwise, <code>false</code>.
  - object
    - `id` string — Unique identifier for the Pack.
    - `spec` string — Semver range constraint to apply when resolving the Pack version to install.
    - `version` string — Version of the Pack, following semantic versioning.
    - `minLogStreamVersion` string — Minimum version of Cribl Stream required to run this Pack.
    - `displayName` string — Human-readable display name for the Pack.
    - `author` string — Name or identifier of the Pack author.
    - `description` string — Brief description of the Pack and its purpose.
    - `source` string, required — Source of the Pack. Provide a staging source ID from <code>PUT /packs</code>, a direct URL to a <code>.crbl</code> file, or a <code>git+&lt;repo-url&gt;</code> Git repository URL. If omitted, an empty Pack is created.
    - `tags` object — Categorization tags for the Pack.
      - `dataType` string[] — List of data type tags for the Pack.
      - `domain` string[] — List of domain tags for the Pack.
      - `technology` string[] — List of technology tags for the Pack.
      - `streamtags` string[] — List of stream tags for routing and filtering.
    - `allowCustomFunctions` boolean — If <code>true</code> or omitted, allow the Pack to use custom JavaScript functions. If <code>false</code>, reject Packs that use custom JavaScript functions.
    - `force` boolean — If <code>true</code>, overwrite an existing Pack with the same ID. Otherwise, <code>false</code>.

## Response `200`

The installed Pack object in a single-item list.

- CountedPackInstallInfo
  - `count` integer, required — number of items present in the items array
  - `items` PackInstallInfo[], required — List of items in this response.
    - `author` string — Name or identifier of the Pack author.
    - `collectors` number — Number of Collectors (saved jobs) configured within the Pack.
    - `dependencies` object — Map of Pack dependency identifiers to their version constraints.
    - `description` string — Brief description of the Pack and its purpose.
    - `displayName` string — Human-readable display name for the Pack.
    - `exports` string[] — List of entity IDs exported by this Pack and available for use outside the Pack context.
    - `id` string, required — Unique identifier.
    - `inputs` number — Number of Sources configured within the Pack.
    - `isDisabled` boolean — If <code>true</code>, the Pack is disabled. Otherwise, <code>false</code>.
    - `minLogStreamVersion` string — Minimum version of Cribl Stream required to run this Pack.
    - `outputs` number — Number of Destinations configured within the Pack.
    - `settings` object — Pack-specific settings object. Contents vary by Pack.
    - `source` string, required — Source of the Pack — a file path, URL, or Git URL from which the Pack was installed.
    - `spec` string — Semver range constraint that was applied when the Pack was installed.
    - `tags` TagsTypePackInstallInfo — Categorization tags for the Pack.
      - `dataType` string[] — List of data type tags for the Pack.
      - `domain` string[] — List of domain tags for the Pack.
      - `streamtags` string[] — List of stream tags for routing and filtering.
      - `technology` string[] — List of technology tags for the Pack.
    - `version` string — Version of the Pack, following semantic versioning.
    - `warnings` string[]

## Other responses

- `401` — Authentication failed (missing or invalid credentials or Bearer token).
- `500` — Unexpected server error.

---

[API](https://skmtc.dev/criblio/apis/cribl-api-reference.md) · [All operations](https://skmtc.dev/criblio/apis/cribl-api-reference/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/criblio/cribl-api-reference/revisions/56cb25079271/schema)
