Group commands

File groups bundle multiple files under a single group ID (format: <uuid>~<count>). They are useful for multi-file uploads and batch operations. See the file groups concept page for details.

Global flags like --json, --jq, -v, and --quiet are available on every command. See Configuration for the full list.

group list

List file groups in the current project.

$uploadcare group list [flags]

Flags:

FlagDefaultDescription
--orderingdatetime_createdSort order. Prefix with - for descending
--limit100Groups per page
--starting-pointStarting point (RFC 3339 datetime)
--page-allfalseStream all pages as NDJSON

JSON fields: id, files_count, datetime_created, datetime_stored, cdn_url, url

Examples:

$uploadcare group list --json all
$uploadcare group list --ordering -datetime_created --json all
$uploadcare group list --page-all --json id

group info

Get details for a file group, including its files.

$uploadcare group info <group-id>

JSON fields: id, files_count, datetime_created, datetime_stored, cdn_url, url, files

Examples:

$uploadcare group info "740e1b8c-1ad8-4324-b7ec-112345678900~3"
$uploadcare group info "740e1b8c-1ad8-4324-b7ec-112345678900~3" --json all

Quote group IDs in your shell to prevent the ~ character from being expanded.


group create

Create a file group from one or more file UUIDs.

$uploadcare group create <uuid>... [flags]

Flags:

FlagDefaultDescription
--from-stdinfalseRead UUIDs from stdin
--dry-runfalseValidate without creating

JSON fields: id, files_count, datetime_created, cdn_url

Examples:

$uploadcare group create UUID1 UUID2 UUID3
$uploadcare group create UUID1 UUID2 --json all
$uploadcare file list --page-all --stored true --json uuid | head -5 | uploadcare group create --from-stdin
$uploadcare group create UUID1 UUID2 --dry-run

group delete

Delete a file group. This removes the group, not the files in it.

$uploadcare group delete <group-id> [flags]

Flags:

FlagDefaultDescription
--dry-runfalseVerify group exists without deleting

JSON fields: id, status

Examples:

$uploadcare group delete "740e1b8c-1ad8-4324-b7ec-112345678900~3"
$uploadcare group delete "740e1b8c-1ad8-4324-b7ec-112345678900~3" --json all
$uploadcare group delete "740e1b8c-1ad8-4324-b7ec-112345678900~3" --dry-run