# gt: General Translation CLI tool: Enqueue
URL: https://generaltranslation.com/en-GB/docs/cli/enqueue.mdx
---
title: Enqueue
description: How to enqueue translations without downloading them
---
## Usage
```bash
npx gt enqueue
```
**Note:** This command requires a production API key! Get one on the
[platform](https://generaltranslation.com/dashboard).
## Overview
The `gt enqueue` command enqueues previously uploaded files for translation, **without waiting for or downloading the results**.
The typical workflow is:
1. [`gt upload`](/docs/cli/upload) — upload source files to the General Translation platform
2. **`gt enqueue`** — enqueue the uploaded files for translation
3. [`gt download`](/docs/cli/download) — download the completed translations
This separation is useful in CI/CD pipelines where each step happens in a different stage or job.
**For Production Use Only!**
This command is intended for production builds and **must not be used in development**.
Remember to specify your production API key (`GT_API_KEY`) and Project ID (`GT_PROJECT_ID`) in your environment variables.
## How it works
1. Reads your `gt.config.json` to determine which files to translate
2. Identifies previously uploaded files by their content hashes
3. Sends them to the General Translation API for translation
4. Exits immediately — does **not** wait for translations to complete
To download the translations once they're ready, run [`gt download`](/docs/cli/download).
## Flags
The `enqueue` command accepts the same flags as [`translate`](/docs/cli/translate#flags).
| Parameter | Description | Type | Optional | Default |
| ----------------- | -------------------------------------------------------- | -------- | -------- | ------------------ |
| `--api-key` | Specify a production API key | `string` | `true` | |
| `--project-id` | Specify the project ID | `string` | `true` | |
| `--version-id` | Specify a version ID (by default, a hash of the content) | `string` | `true` | |
| `--config ` | Specify a path to the GT config file | `string` | `true` | `"gt.config.json"` |
| `--timeout` | The timeout for the request in seconds | `number` | `true` | `900` |
| `--new, --locales ` | Locales to translate your project into | `[string]` | `true` | |
| `--default-locale ` | The source locale for the project | `string` | `true` | `en` |
| `--dry-run` | Perform a dry run of the command | `flag` | `true` | `false` |
## Example: Split CI pipeline
```bash
# Stage 1: Upload source files
npx gt upload
# Stage 2: Enqueue translations
npx gt enqueue
# Stage 3: Download when ready
npx gt download
```