For the complete documentation index, see llms.txt. This page is also available as Markdown.

CLI Usage

Use the Roboflow CLI to create and manage Batch Processing jobs.

By installing inference-cli you gain access to the inference rf-cloud command, which allows you to interact with Batch Processing and Data Staging — the core components of Roboflow Batch Processing.

Setup

pip install inference-cli
export ROBOFLOW_API_KEY="YOUR-API-KEY-GOES-HERE"

For cloud storage support:

pip install 'inference-cli[cloud-storage]'

If you need help finding your API key, see our authentication guide.

Ingest Data

Images

inference rf-cloud data-staging create-batch-of-images \
  --images-dir <your-images-dir-path> \
  --batch-id <your-batch-id>

Videos

inference rf-cloud data-staging create-batch-of-videos \
  --videos-dir <your-videos-dir-path> \
  --batch-id <your-batch-id>

Batch ID format: Must be lowercase, at most 64 characters, with only letters, digits, hyphens (-), and underscores (_).

Cloud Storage

If your data is already in cloud storage (S3, Google Cloud Storage, or Azure), you can process it directly without downloading files locally.

For images:

For videos:

The --bucket-path parameter supports:

  • S3: s3://bucket-name/path/

  • Google Cloud Storage: gs://bucket-name/path/

  • Azure Blob Storage: az://container-name/path/

You can include glob patterns to filter files:

  • s3://my-bucket/training-data/**/*.jpg — All JPG files recursively

  • gs://my-bucket/videos/2024-*/*.mp4 — MP4 files in 2024-* folders

  • az://container/images/*.png — PNG files in images folder

Your cloud storage credentials are used only locally by the CLI to generate presigned URLs. They are never uploaded to Roboflow servers.

For large datasets, the system automatically splits images into chunks of 20,000 files each. Videos work best in batches under 1,000.

Signed URL Ingestion

For advanced automation, you can ingest data via signed URLs instead of local files:

  • --data-source references-file — Process files referenced via signed URLs.

  • --references <path_or_url> — Path to a JSONL file containing file URLs, or a signed URL pointing to such a file.

Reference File Format (JSONL):

Signed URL ingestion is available to Growth Plan and Enterprise customers.

Inspect Staged Data

Start a Job

Process Images

Process Videos

Finding your Workflow ID: Open the Workflow Editor in the Roboflow App, click "Deploy", and find the identifier in the code snippet.

By default, processing runs on CPU. Use --machine-type gpu for Workflows with multiple or large models.

Monitor Job Progress

The start command outputs a Job ID. Use it to check status:

Export Results

The job details will include the output batch ID. Use it to export results:

Webhook Automation

Instead of polling for status, you can use webhooks to get notified when ingestion or processing completes.

Data Ingestion Webhooks

The CLI commands create-batch-of-images and create-batch-of-videos support:

  • --notifications-url <webhook_url> — Webhook endpoint for notifications.

  • --notification-category <value> — Filter notifications:

    • ingest-status (default) — Overall ingestion process status.

    • files-status — Individual file processing status.

Notifications are delivered via HTTP POST with an Authorization header containing your Roboflow Publishable Key.

Ingest Status Notification

File Status Notification

Job Completion Webhooks

Add --notifications-url when starting a job:

Job Completion Notification

Cloud Storage Authentication

AWS S3 and S3-Compatible Storage

Credentials are detected automatically from:

  1. Environment variables:

  1. AWS credential files (~/.aws/credentials, ~/.aws/config)

  2. IAM roles (EC2, ECS, Lambda)

Named profiles:

S3-compatible services (Cloudflare R2, MinIO, etc.):

Google Cloud Storage

Credentials are detected from:

  1. Service account key file (recommended for automation):

  1. User credentials from gcloud CLI (gcloud auth login)

  2. GCP metadata service (when running on Google Cloud Platform)

Azure Blob Storage

SAS Token (recommended):

Account Key:

Generate a SAS token via Azure CLI:

Custom Scripts

For advanced use cases, reference scripts for generating signed URL files:

Discover All Options

Last updated

Was this helpful?