Skip to main content
The flags below work across difyctl commands. -v and -h are universal, while -o and --http-retry are accepted by most but not all. Check a command’s reference for the flags it accepts.
FlagWhat it does
-o, --output <format>Selects the output format: json, yaml, name, wide, or text.
-v, --verboseTurns on verbose diagnostics on stderr.
--http-retry <n>Sets the retry budget for idempotent requests.
-h, --helpShow the command’s help instead of running it.
Flags always follow the command: difyctl get app -o json works; difyctl -o json get app is read as an unknown command.

Output Format

To see which of the five formats a command supports, check its --help or the flags table on its reference page. If you repeat the flag, the last value wins. -o also changes how failures render: under -o json, errors arrive as a machine-readable JSON object on stderr. For the format schemas, defaults, and channel rules, see Output Formats and Exit Codes.
On export studio-app, -o is the output file path, not a format selector.

Verbose Mode

-v adds verbose HTTP logging to stderr and includes the raw_response field (the raw server response, bearer tokens redacted) in error output. Use it when a request fails and the normal error doesn’t explain why.

HTTP Retries

difyctl retries idempotent requests (GET, PUT, DELETE) on transient failures: network errors and HTTP 408, 413, 500, 502, 503, and 504 responses. POST requests are never retried. A 429 (rate limited) is handled separately and exits 7, not retried by this budget. The default budget is 3 attempts with exponential backoff (300 ms, doubling, capped at 30 s). Use --http-retry 0 to disable retries. The DIFYCTL_HTTP_RETRY environment variable sets the same budget; if both are set, the flag takes priority.
Last modified on June 25, 2026