# Pool

Fetch, list, and manage org pools

* [`sfp pool delete`](#sfp-pool-delete)
* [`sfp pool extend`](#sfp-pool-extend)
* [`sfp pool fetch`](#sfp-pool-fetch)
* [`sfp pool list`](#sfp-pool-list)
* [`sfp pool unassign`](#sfp-pool-unassign)

## `sfp pool delete`

Delete org instances from a pool. Use --name to delete a single instance, or --all to delete all instances in the pool.

```
USAGE
  $ sfp pool delete -r <value> -p <value> [--json] [-e <value>] [-t <value>] [--sfp-server-url <value>] [-g
    <value>...] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL] [--all | -n <value> |
    -f]

FLAGS
  -e, --email=<value>               Email address for authenticated user. Ignored if --application-token is provided.
                                    Can be set via SFP_SERVER_USER env var.
  -f, --force                       Force deletion even if the instance is less than 24 hours old, is immortal, or
                                    Salesforce deletion fails
  -g, --logsgroupsymbol=<value>...  Symbol used by CICD platform to group/collapse logs in the console. Provide an
                                    opening group, and an optional closing group symbol.
  -n, --name=<value>                Name/username of the org instance to delete (sandbox name or scratch org username)
  -p, --tag=<value>                 (required) Pool tag where the org belongs
  -r, --repository=<value>          (required) Repository identifier in format owner/repo (GitHub/GitLab) or
                                    org/project/repo (Azure DevOps)
  -t, --application-token=<value>   Application token for CI/CD authentication. Can be set via SFP_SERVER_TOKEN env var
                                    (CLI flags take precedence over env vars).
      --all                         Delete all instances in the pool (keeps pool config intact)
      --loglevel=<option>           [default: info] logging level for this command invocation
                                    <options: trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL>
      --sfp-server-url=<value>      URL of the SFP server. Can be set via SFP_SERVER_URL env var or config: sfp
                                    config:set server-url

GLOBAL FLAGS
  --json  Format output as json.

DESCRIPTION
  Delete org instances from a pool. Use --name to delete a single instance, or --all to delete all instances in the
  pool.

EXAMPLES
  $ sfp pool delete -r myorg/myrepo -p dev_pool --name my-scratch-org@example.com

  $ sfp pool delete -r myorg/myrepo -p dev_pool --name 123456 --force

  $ sfp pool delete -r myorg/myrepo -p dev_pool --all
```

*See code:* [*src/commands/pool/delete.ts*](https://source.flxbl.io/flxbl/sfp-pro)

## `sfp pool extend`

Extend the expiration time of an assigned org and optionally change its immortal state

```
USAGE
  $ sfp pool extend -r <value> -p <value> --assignment-id <value> [--json] [-e <value>] [-t <value>]
    [--sfp-server-url <value>] [-g <value>...] [--loglevel
    trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL] [--extension-hours <value>] [--immortal]

FLAGS
  -e, --email=<value>               Email address for authenticated user. Ignored if --application-token is provided.
                                    Can be set via SFP_SERVER_USER env var.
  -g, --logsgroupsymbol=<value>...  Symbol used by CICD platform to group/collapse logs in the console. Provide an
                                    opening group, and an optional closing group symbol.
  -p, --tag=<value>                 (required) Pool tag where the org belongs
  -r, --repository=<value>          (required) Repository identifier in format owner/repo (GitHub/GitLab) or
                                    org/project/repo (Azure DevOps)
  -t, --application-token=<value>   Application token for CI/CD authentication. Can be set via SFP_SERVER_TOKEN env var
                                    (CLI flags take precedence over env vars).
      --assignment-id=<value>       (required) Assignment ID of the org to extend
      --extension-hours=<value>     Number of hours to extend (defaults to pool configuration)
      --[no-]immortal               Set or change the immortal state of the org (use --no-immortal to remove immortal
                                    status)
      --loglevel=<option>           [default: info] logging level for this command invocation
                                    <options: trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL>
      --sfp-server-url=<value>      URL of the SFP server. Can be set via SFP_SERVER_URL env var or config: sfp
                                    config:set server-url

GLOBAL FLAGS
  --json  Format output as json.

DESCRIPTION
  Extend the expiration time of an assigned org and optionally change its immortal state

EXAMPLES
  $ sfp server pool instance extend --repository myorg/myrepo --tag dev_pool --assignment-id PR-123

  $ sfp server pool instance extend --repository myorg/myrepo --tag dev_pool --assignment-id PR-123 --extension-hours 48

  $ sfp server pool instance extend --repository myorg/myrepo --tag dev_pool --assignment-id PR-123 --immortal

  $ sfp server pool instance extend --repository myorg/myrepo --tag dev_pool --assignment-id PR-123 --no-immortal
```

*See code:* [*src/commands/pool/extend.ts*](https://source.flxbl.io/flxbl/sfp-pro)

## `sfp pool fetch`

Fetch an available org from the pool

```
USAGE
  $ sfp pool fetch -r <value> -p <value> [--json] [-e <value>] [-t <value>] [--sfp-server-url <value>] [-g
    <value>...] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL] [--assignment-id
    <value>] [--expiration-hours <value>] [--immortal] [-a <value>] [-d] [--create-user]

FLAGS
  -a, --alias=<value>               Alias for the authenticated org
  -d, --set-default                 Set as default org
  -e, --email=<value>               Email address for authenticated user. Ignored if --application-token is provided.
                                    Can be set via SFP_SERVER_USER env var.
  -g, --logsgroupsymbol=<value>...  Symbol used by CICD platform to group/collapse logs in the console. Provide an
                                    opening group, and an optional closing group symbol.
  -p, --tag=<value>                 (required) Pool tag to fetch from
  -r, --repository=<value>          (required) Repository identifier in format owner/repo (GitHub/GitLab) or
                                    org/project/repo (Azure DevOps)
  -t, --application-token=<value>   Application token for CI/CD authentication. Can be set via SFP_SERVER_TOKEN env var
                                    (CLI flags take precedence over env vars).
      --assignment-id=<value>       Unique identifier for this assignment (e.g., PR-123, JIRA-456). If provided and an
                                    org is already assigned to this ID, it will be reused
      --create-user                 Create a Salesforce user in the assigned sandbox and send a password reset email
      --expiration-hours=<value>    Hours until the org expires (overrides pool default)
      --immortal                    Make the org immortal (never expires)
      --loglevel=<option>           [default: info] logging level for this command invocation
                                    <options: trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL>
      --sfp-server-url=<value>      URL of the SFP server. Can be set via SFP_SERVER_URL env var or config: sfp
                                    config:set server-url

GLOBAL FLAGS
  --json  Format output as json.

DESCRIPTION
  Fetch an available org from the pool

EXAMPLES
  $ sfp pool fetch -r myorg/myrepo -p dev_pool --assignment-id PR-123

  $ sfp pool fetch -r myorg/myrepo -p dev_pool --assignment-id PR-123 --alias my-org

  $ sfp pool fetch -r myorg/myrepo -p dev_pool --assignment-id PR-123 --alias my-org --set-default
```

*See code:* [*src/commands/pool/fetch.ts*](https://source.flxbl.io/flxbl/sfp-pro)

## `sfp pool list`

List pools in a repository, or instances in a specific pool

```
USAGE
  $ sfp pool list -r <value> [--json] [-e <value>] [-t <value>] [--sfp-server-url <value>] [-g <value>...]
    [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL] [-p <value>] [-s REQUESTED|PROVISIO
    NING|ACTIVATING|AVAILABLE|ASSIGNED|EXPIRED|FLAGGED_FOR_REFRESH|REFRESHING|DELETING|ORPHANED|ERROR|UNKNOWN]

FLAGS
  -e, --email=<value>               Email address for authenticated user. Ignored if --application-token is provided.
                                    Can be set via SFP_SERVER_USER env var.
  -g, --logsgroupsymbol=<value>...  Symbol used by CICD platform to group/collapse logs in the console. Provide an
                                    opening group, and an optional closing group symbol.
  -p, --tag=<value>                 Pool tag to list instances from. If not specified, shows all pools summary
  -r, --repository=<value>          (required) Repository identifier in format owner/repo (GitHub/GitLab) or
                                    org/project/repo (Azure DevOps)
  -s, --status=<option>             Filter by instance status (only when --tag is specified)
                                    <options: REQUESTED|PROVISIONING|ACTIVATING|AVAILABLE|ASSIGNED|EXPIRED|FLAGGED_FOR_R
                                    EFRESH|REFRESHING|DELETING|ORPHANED|ERROR|UNKNOWN>
  -t, --application-token=<value>   Application token for CI/CD authentication. Can be set via SFP_SERVER_TOKEN env var
                                    (CLI flags take precedence over env vars).
      --loglevel=<option>           [default: info] logging level for this command invocation
                                    <options: trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL>
      --sfp-server-url=<value>      URL of the SFP server. Can be set via SFP_SERVER_URL env var or config: sfp
                                    config:set server-url

GLOBAL FLAGS
  --json  Format output as json.

DESCRIPTION
  List pools in a repository, or instances in a specific pool

EXAMPLES
  $ sfp pool list --repository myorg/myrepo

  $ sfp pool list --repository myorg/myrepo --tag dev_pool

  $ sfp pool list --repository myorg/myrepo --tag dev_pool --status AVAILABLE
```

*See code:* [*src/commands/pool/list.ts*](https://source.flxbl.io/flxbl/sfp-pro)

## `sfp pool unassign`

Unassign an org and return it to the available pool

```
USAGE
  $ sfp pool unassign -r <value> -p <value> [--json] [-e <value>] [-t <value>] [--sfp-server-url <value>] [-g
    <value>...] [--loglevel trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL] [--assignment-id
    <value> | --sandbox-id <value>]

FLAGS
  -e, --email=<value>               Email address for authenticated user. Ignored if --application-token is provided.
                                    Can be set via SFP_SERVER_USER env var.
  -g, --logsgroupsymbol=<value>...  Symbol used by CICD platform to group/collapse logs in the console. Provide an
                                    opening group, and an optional closing group symbol.
  -p, --tag=<value>                 (required) Pool tag where the org belongs
  -r, --repository=<value>          (required) Repository identifier in format owner/repo (GitHub/GitLab) or
                                    org/project/repo (Azure DevOps)
  -t, --application-token=<value>   Application token for CI/CD authentication. Can be set via SFP_SERVER_TOKEN env var
                                    (CLI flags take precedence over env vars).
      --assignment-id=<value>       Assignment ID of the org to unassign
      --loglevel=<option>           [default: info] logging level for this command invocation
                                    <options: trace|debug|info|warn|error|fatal|TRACE|DEBUG|INFO|WARN|ERROR|FATAL>
      --sandbox-id=<value>          Org ID to unassign directly (e.g., sb-pool-tag-orgname)
      --sfp-server-url=<value>      URL of the SFP server. Can be set via SFP_SERVER_URL env var or config: sfp
                                    config:set server-url

GLOBAL FLAGS
  --json  Format output as json.

DESCRIPTION
  Unassign an org and return it to the available pool

EXAMPLES
  $ sfp server pool instance unassign --repository myorg/myrepo --tag dev_pool --assignment-id PR-123

  $ sfp server pool instance unassign --repository myorg/myrepo --tag dev_pool --sandbox-id abc123def456
```

*See code:* [*src/commands/pool/unassign.ts*](https://source.flxbl.io/flxbl/sfp-pro)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.flxbl.io/flxbl/sfp/sfp-community/cli-reference-v51-release-v3/advanced/pool.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
