# Export Files

> Export files from the CloudConvert service to external storages or temporary download URLs

## URL

To create temporary URLs for downloading files, [create a job](https://cloudconvert.com/docs/raw/api-reference/jobs.md#create-job) with a `export/url` task.

Please note that all tasks get deleted after 24 hours automatically. Meaning, the created URLs are available for 24 hours only.

#### Task Parameters

### export/url task parameters

- `operation` _string_ required: Value is `export/url`.
- `input` _string or array of task names_: The input task name(s) for this task.
- `inline` _boolean_: This option makes the export URLs return the Content-Disposition inline header, which tells browser to display the file instead of downloading it.
- `archive_multiple_files` _boolean_: By default, multiple files will create multiple export URLs. When enabling this option, one export URL with a ZIP file will be created.

<tip to="https://cloudconvert.com/job-builder?operation=export/url">

Use the **Job Builder** to generate and try out export/url jobs.

</tip>

## S3

To export files to an S3 compatible object storage, [create a job](https://cloudconvert.com/docs/raw/api-reference/jobs.md#create-job) with a `export/s3` task.

#### Task Parameters

### export/s3 task parameters

- `operation` _string_ required: Value is `export/s3`.
- `input` _string or array of task names_: The input task name(s) for this task.
- `bucket` _string_ required: The Amazon S3 bucket where to store the file(s).
- `region` _string_ required: Specify the Amazon S3 endpoint, e.g. us-west-2 or eu-west-1.
- `endpoint` _string_: Use a custom S3 API endpoint. The default endpoint is built from the configured region. Makes it possible to use other S3 compatible storage services (e.g. DigitalOcean).
- `key` _string_: S3 key for storing the file (the filename in the bucket, including path). If there are multiple files to export, printf style placeholders are possible (e.g. `myfile-%d.pdf` produces the output files myfile-1.pdf, myfile-2.pdf and so on).
- `key_prefix` _string_: Alternatively to using key, you can specify a key prefix for exporting files.
- `access_key_id` _string_ required: The Amazon S3 access key id. It needs to have the `s3:PutObject` permission. When using a different ACL from `private`, it needs to have the `s3:PutObjectAcl` permission.
- `secret_access_key` _string_ required: The Amazon S3 secret access key.
- `session_token` _string_: Auth using temporary credentials (AWS Security Token Service).
- `acl` _string_: S3 ACL for storing the files. Possible values include: private, public-read, public-read-write, authenticated-read, bucket-owner-read, bucket-owner-full-control. Defaults to private.
- `cache_control` _string_: S3 CacheControl header to specify the lifetime of the file, for example: max-age=172800.
- `content_disposition` _string_: Specify the Content-Disposition header for the file, for example: attachment or inline.
- `content_type` _string_: Specify the Content-Type header for the file, for example: application/pdf. By default, it will automatically set the correct Content-Type based on the mime type.
- `metadata` _dictionary_: Object of additional S3 meta data.
- `server_side_encryption` _string_: Enable the Server-side encryption algorithm used when storing this object in S3. Possible values include AES256 and aws:kms.
- `tagging` _dictionary_: Object of S3 tags to add to the keys.

<tip to="https://cloudconvert.com/job-builder?operation=export/s3">

Use the **Job Builder** to generate and try out export/s3 jobs.

</tip>

## Azure Blob Storage

To export files to an Azure blob container, [create a job](https://cloudconvert.com/docs/raw/api-reference/jobs.md#create-job) with a `export/azure/blob` task.

#### Task Parameters

### export/azure/blob task parameters

- `operation` _string_ required: Value is `export/azure/blob`.
- `input` _string or array of task names_: The input task name(s) for this task.
- `storage_account` _string_ required: The name of the Azure storage account (This is the string before .blob.core.windows.net).
- `storage_access_key` _string_: The Azure secret key. Only required alternatively, if you are not providing a SAS token.
- `sas_token` _string_: The SAS token for the Azure storage account.
- `container` _string_ required: Azure container name.
- `blob` _string_: Blob name for storing the file (the filename in the container, including path). If there are multiple files to export, printf style placeholders are possible (e.g. `myfile-%d.pdf` produces the output files myfile-1.pdf, myfile-2.pdf and so on).
- `blob_prefix` _string_: Alternatively to using blob, you can specify a blob prefix for exporting files.
- `metadata` _dictionary_: Object of additional Azure meta data.

<tip to="https://cloudconvert.com/job-builder?operation=export/azure/blob">

Use the **Job Builder** to generate and try out export/azure/blob jobs.

</tip>

## Google Cloud Storage

To export files to a Google Cloud Storage bucket, [create a job](https://cloudconvert.com/docs/raw/api-reference/jobs.md#create-job) with a `export/google-cloud-storage` task.

#### Task Parameters

### export/google-cloud-storage task parameters

- `operation` _string_ required: Value is `export/google-cloud-storage`.
- `input` _string or array of task names_: The input task name(s) for this task.
- `project_id` _string_ required: The Google Cloud Project ID (api-project-...).
- `bucket` _string_ required: The Google Cloud Storage Bucket name.
- `client_email` _string_ required: The client email of the service account to use (...@api-project-....iam.gserviceaccount.com).
- `private_key` _string_ required: The private key of the service account.
- `file` _string_: Filename of the file to create (the filename in the bucket, including path).
- `file_prefix` _string_: Alternatively to using file, you can specify a file prefix for exporting files.

<tip to="https://cloudconvert.com/job-builder?operation=export/google-cloud-storage">

Use the **Job Builder** to generate and try out export/google-cloud-storage jobs.

</tip>

## OpenStack

To export files to OpenStack Object Storage (Swift), [create a job](https://cloudconvert.com/docs/raw/api-reference/jobs.md#create-job) with a `export/openstack` task.

#### Task Parameters

### export/openstack task parameters

- `operation` _string_ required: Value is `export/openstack`.
- `input` _string or array of task names_: The input task name(s) for this task.
- `auth_url` _string_ required: The URL of the OpenStack Identity endpoint (without version).
- `region` _string_ required: Specify the OpenStack region.
- `container` _string_ required: The name of the OpenStack Storage container.
- `username` _string_ required: The OpenStack username.
- `password` _string_ required: The OpenStack password.
- `file` _string_: File name of the file to create (the filename in container bucket, including path).
- `file_prefix` _string_: Alternatively to using file, you can specify a file prefix for exporting files.

<tip to="https://cloudconvert.com/job-builder?operation=export/openstack">

Use the **Job Builder** to generate and try out export/openstack jobs.

</tip>

## SFTP

To export files to your SFTP server, [create a job](https://cloudconvert.com/docs/raw/api-reference/jobs.md#create-job) with a `export/sftp` task.

#### Task Parameters

### export/sftp task parameters

- `operation` _string_ required: Value is `export/sftp`.
- `input` _string or array of task names_: The input task name(s) for this task.
- `host` _string_ required: The SFTP server hostname.
- `port` _integer_: The SFTP port. Defaults to 22.
- `username` _string_ required: The SFTP username.
- `password` _string_: The SFTP password.
- `private_key` _string_: Alternatively to using password, you can provide a private key.
- `file` _string_: File name of the file to create (the filename on the server, including path).
- `path` _string_: Alternatively to using file, you can specify a path for exporting files.

<tip to="https://cloudconvert.com/job-builder?operation=export/sftp">

Use the **Job Builder** to generate and try out export/sftp jobs.

</tip>

## Upload

To upload files to any arbitrary URL via HTTP `PUT`, [create a job](https://cloudconvert.com/docs/raw/api-reference/jobs.md#create-job) with a `export/upload` task.

This can be used to upload to AWS S3 using [presigned URLs](https://docs.aws.amazon.com/AmazonS3/latest/userguide/PresignedUrlUploadObject.html), for example.

#### Task Parameters

### export/upload task parameters

- `operation` _string_ required: Value is `export/upload`.
- `input` _string or array of task names_: The input task name(s) for this task.
- `url` _string_ required: The URL to send the PUT request to.
- `headers` _dictionary_: Object of additional headers to send with the PUT request. Can be used to access URLs that require authorization.

<tip to="https://cloudconvert.com/job-builder?operation=export/upload">

Use the **Job Builder** to generate and try out export/upload jobs.

</tip>
