mc share download

Syntax

The mc share download command generates a temporary presigned URL with integrated access credentials for downloading objects from a MinIO bucket. The temporary URL expires after a configurable time limit.

  • Applications can perform a GET to retrieve the object from the URL.

  • Users can open the URL in a browser to download the object.

For more information on shareable object URLs, see the Amazon S3 documentation on Pre-Signed URLs.

The following command generates a new presigned download URL for the mydata bucket on the myminio MinIO deployment:

mc share download --recursive myminio/mydata

The command has the following syntax:

mc [GLOBALFLAGS] share upload             \
                 [--expire "string"]      \
                 [--recursive]            \
                 [--version-id "string"]  \
                 ALIAS
  • Brackets [] indicate optional parameters.

  • Parameters sharing a line are mutually dependent.

  • Parameters seperated using the pipe | operator are mutually exclusive.

Copy the example to a text editor and modify as-needed before running the command in the terminal/shell.

Parameters

ALIAS

Required The alias of a MinIO deplyment and the full path to the object for which to generate a download URL. For example:

mc share download play/mybucket/object.txt

You can specify multiple objects on the same or different MinIO deployments. For example:

mc share download play/mybucket/object.txt play/mybucket/otherobject.txt

If specifying the path to a bucket or bucket prefix, you must also specify the --recursive argument. For example:

mc share download --recursive play/mybucket/

mc share download --recursive play/mybucket/myprefix/
--expire, E

Optional Set the expiration time limit for all generated URLs.

Specify a string with format ##h##m##s format. For example: 12h34m56s for an expiry of 12 hours, 34 minutes, and 56 seconds after URL generation.

Defaults to 168h or 168 hours (7 days).

--recursive, r

Optional Recursively generate URLs for all objects in a mc share download ALIAS bucket or bucket prefix.

Required if any ALIAS specifies a path to a bucket or bucket prefix.

--version-id, vid

Optional Directs mc share download to operate only on the specified object version.

--version-id requires that the specified ALIAS be an S3-compatible service that supports Bucket Versioning. For MinIO deployments, use mc version to enable or disable bucket versioning.

Global Flags

--debug
Optional

Enables verbose output to the console.

For example:

mc --debug COMMAND
--config-dir
Optional

The path to a JSON formatted configuration file that mc uses for storing data. See Configuration File for more information on how mc uses the configuration file.

--JSON
Optional

Enables JSON lines formatted output to the console.

For example:

mc --JSON COMMAND
--no-color
Optional

Disables the built-in color theme for console output. Useful for dumb terminals.

--quiet
Optional

Suppresses console output.

--insecure
Optional

Disables TLS/SSL certificate verification. Allows TLS connectivity to servers with invalid certificates. Exercise caution when using this option against untrusted S3 hosts.

--version
Optional

Displays the current version of mc.

--help
Optional

Displays a summary of command usage on the terminal.

Examples

Generate a URL to Download Object(s)

Use mc share download to generate a URL that supports GET requests for an object:

mc share download --expire DURATION ALIAS/PATH
  • Replace ALIAS with the alias of the MinIO deployment.

  • Replace PATH with the path to the object on the MinIO deployment.

  • Replace DURATION with the duration after which the URL expires. For example, to set a 30 day expiry, specify 30d.

Use mc share download with the --recursive option to generate a URL for each object in a bucket. Each URL supports GET requests for its associated object:

mc share download --recursive --expire DURATION ALIAS/PATH
  • Replace ALIAS with the alias of the MinIO deployment.

  • Replace PATH with the path to the bucket or bucket prefix on the MinIO deployment.

  • Replace DURATION with the duration after which the URL expires. For example, to set a 30 day expiry, specify 30d.

Behavior

S3 Compatibility

The mc commandline tool is built for compatibility with the AWS S3 API and is tested MinIO and AWS S3 for expected functionality and behavior.

MinIO provides no guarantees for other S3-compatible services, as their S3 API implementation is unknown and therefore unsupported. While mc commands may work as documented, any such usage is at your own risk.