Pools
Retrieve all pool configurations (both sandbox and scratch org pools), optionally filtered by repository and/or pool type
Repository identifier in format org/repo
flxbl-io/sf-coreFilter by pool type (SANDBOX or SCRATCH_ORG)
Pool configurations retrieved successfully
Pool configurations retrieved successfully
Create a new configuration for a sandbox pool (Note: Scratch org pools are discovered automatically from DevHub)
Repository identifier in format org/repo
flxbl-io/sf-coreUser-friendly display name for the pool
Development PoolUnique machine-readable tag for this pool
dev-poolOptional Git branch pattern this pool serves
feature/*Sandbox definition configuration. Either specify licenseType to create from production OR sourceSandboxName to clone an existing sandbox
{"autoActivate":true,"licenseType":"Developer","description":"Dev sandbox for feature development","sandboxName":["DEV","QA"]}Source sandbox name for cloning (deprecated - use sandboxDefinition.sourceSandboxName)
TEMPLATE_SBTarget number of AVAILABLE sandboxes
3Hard cap for total sandboxes in this pool
10TTL in days for available sandboxes before refresh/delete
30Strategy for handling expired sandboxes
DELETE_EXPIREDPossible values: Whether this pool configuration is active for monitoring
trueAdditional configuration for user activation and data seeding
Default expiration hours for assigned sandboxes
24Example: 24Extended expiration hours for assigned sandboxes
168Average time in minutes it takes to create a sandbox
45When true, unassigned sandboxes return to pool as AVAILABLE. When false, they are marked as EXPIRED
falseExample: falseAdditional metadata for the pool configuration for custom filtering and tagging
{"environment":"dev","team":"platform","region":"us-west"}Pool configuration created successfully
Pool configuration created successfully
Retrieve a specific pool configuration (sandbox or scratch org) by tag and repository
The tag of the pool to retrieve
Repository identifier in format org/repo
flxbl-io/sf-corePool type hint for faster lookup (SANDBOX or SCRATCH_ORG). If not specified, both types are checked
Pool configuration retrieved successfully
Pool configuration retrieved successfully
Delete an existing pool configuration. For sandbox pools, deletes the configuration and all sandboxes. For scratch org pools, deletes all scratch orgs in the pool from Salesforce.
The tag of the pool to delete
Repository identifier in format org/repo
flxbl-io/sf-corePool deleted successfully
Pool deleted successfully
Update an existing configuration for a sandbox pool
The tag of the pool to update
Repository identifier in format org/repo
flxbl-io/sf-coreUser-friendly display name for the pool
Development PoolOptional Git branch pattern this pool serves
feature/*Sandbox definition configuration
Source sandbox name for cloning (deprecated)
TEMPLATE_SBTarget number of AVAILABLE sandboxes
3Hard cap for total sandboxes in this pool
10TTL in days for available sandboxes before refresh/delete
30Strategy for handling expired sandboxes
DELETE_EXPIREDPossible values: Whether this pool configuration is active for monitoring
trueAdditional configuration for user activation and data seeding
Default expiration hours for assigned sandboxes
24Extended expiration hours for assigned sandboxes
168Average time in minutes it takes to create a sandbox
45When true, unassigned sandboxes return to pool as AVAILABLE. When false, they are marked as EXPIRED
falseAdditional metadata for the pool configuration for custom filtering and tagging
{"environment":"dev","team":"platform","region":"us-west"}Pool configuration updated successfully
Pool configuration updated successfully
Retrieve current status of pools (sandbox or scratch org) and their instances. Supports filtering by status, pool type, and entity assignment.
Repository identifier in format org/repo
flxbl-io/sf-coreOptional. If provided, returns detailed status for the specified pool.
Optional. Filter instances by status (used with poolTag).
Optional. Filter by assignment UUID (sandbox pools only).
Optional. Pool type hint for faster lookup (SANDBOX or SCRATCH_ORG).
Optional. Force refresh of cached data for scratch org pools.
Pool status retrieved successfully
Pool status retrieved successfully
Identify and optionally cleanup sandbox instances that exist in the database but not in Salesforce
DevHub username to check for zombies
devhub_main_orgIf true, only identify zombies without deleting them
trueZombie cleanup completed
Zombie cleanup completed
Returns whether the system is using mock or real Salesforce sandbox service. All authenticated users can view the service mode.
Current mode information
Current mode information
Retrieve information about all repository-specific pool monitoring jobs. All authenticated users can view monitoring job status.
Monitoring job status retrieved successfully
Monitoring job status retrieved successfully
Get a list of all instances in a specific pool (sandbox or scratch org)
Pool tag to get instances for (works with both sandbox and scratch org pools)
core_dev or ciRepository identifier in format org/repo
flxbl-io/sf-coreOptional pool type hint for faster lookup (SANDBOX or SCRATCH_ORG). If not specified, the pool type is auto-detected
Optional. Force refresh of cached data for scratch org pools (ignored for sandbox pools).
List of pool instances (either SandboxPoolInstance or BasePoolInstance depending on pool type)
List of pool instances (either SandboxPoolInstance or BasePoolInstance depending on pool type)
Create new sandbox instances for a specific pool or all pools to meet target capacity. (Note: Only works for sandbox pools)
Pool tag to target, or "all" to target all active pools
core_devRepository identifier in format org/repo
flxbl-io/sf-coreProvisioning started successfully
Provisioning started successfully
Assign an available sandbox from the pool using a unique assignment ID. If a sandbox is already assigned to the provided assignment ID, it will be reused.
Pool tag to fetch sandbox from
core_devRepository identifier in format org/repo
flxbl-io/sf-coreUUID identifying the assignment. If not provided, a new UUID will be generated.
550e8400-e29b-41d4-a716-446655440000If true, the sandbox will not expire automatically
falseEmail of the user to assign the sandbox to. Only applicable when using application tokens. If not provided, defaults to app:<token_creator>
[email protected]Instance successfully assigned (sandbox or scratch org)
Instance successfully assigned (sandbox or scratch org)
No content
Release an assigned instance (sandbox or scratch org) and return it to the available pool. Provide either instanceId for direct unassignment, or assignmentId to find and unassign the instance. The user must own the instance or have Owner role.
Pool tag where the instance belongs (works with both sandbox and scratch org pools)
core_dev or ciRepository identifier in format org/repo
flxbl-io/sf-coreID of the sandbox to unassign (required if assignmentId is not provided)
sb-123456UUID of the assignment to unassign (required if sandboxId is not provided)
550e8400-e29b-41d4-a716-446655440000Instance unassigned successfully (sandbox or scratch org)
Instance unassigned successfully (sandbox or scratch org)
No content
Extend the expiration time of a sandbox identified by its assignment ID. You can specify custom extension hours in the request body, otherwise it defaults to the pool configuration.
Pool tag where the sandbox belongs
core_devRepository identifier in format org/repo
flxbl-io/sf-coreUUID of the assignment to extend
550e8400-e29b-41d4-a716-446655440000Number of hours to extend the sandbox expiration. If not provided, uses the pool's configured extension hours.
24Set or change the immortal state of the sandbox. If not provided, immortal state remains unchanged.
trueExpiry extended successfully
Expiry extended successfully
Performs the complete pool maintenance workflow including reconciliation with Salesforce, lifecycle processing (expiration/deletion), and quota maintenance (provisioning). This endpoint can be called manually by clients or triggered by server-side cron jobs.
The unique tag of the pool
core_devRepository identifier in format org/repo
flxbl-io/sf-coreReplenishment workflow initiated
Replenishment workflow initiated
Forcefully delete a sandbox instance from the pool. This is an admin operation that bypasses normal lifecycle checks and should be used carefully. For instances in ERROR status, the database entry will be deleted even if Salesforce deletion fails, allowing the pool to replenish. For other statuses, use the force flag to delete regardless of Salesforce results.
Pool tag where the sandbox belongs
core_devName of the sandbox to delete
123456Repository identifier in format org/repo
flxbl-io/sf-coreForce deletion even if sandbox is less than 24 hours old
trueSandbox successfully deleted or marked for deletion
Cannot delete sandbox (e.g., immortal instance without force flag)
Sandbox not found
Last updated