AlistGo/alist · error

mode must be %d (original) or %d (original and transcoded)

Error message

mode must be %d (original) or %d (original and transcoded)

What it means

Error "mode must be %d (original) or %d (original and transcoded)" thrown in AlistGo/alist.

Source

Thrown at drivers/123_open/other.go:800

func otherTranscodeDelete(d *Open123, ctx context.Context, args model.OtherArgs) (interface{}, error) {
	var req struct {
		FileID int64 `json:"file_id"`
		// Mode 1 deletes the source only, 2 also deletes the transcoded files.
		Mode int `json:"mode"`
	}
	if err := decodeOtherArgs(args.Data, &req); err != nil {
		return nil, err
	}
	fileID, err := resolveFileID(args, req.FileID)
	if err != nil {
		return nil, err
	}
	if req.Mode == 0 {
		req.Mode = int(pan123.DeleteOriginal)
	}
	if req.Mode != int(pan123.DeleteOriginal) && req.Mode != int(pan123.DeleteOriginalAndTranscoded) {
		return nil, fmt.Errorf("mode must be %d (original) or %d (original and transcoded)",
			pan123.DeleteOriginal, pan123.DeleteOriginalAndTranscoded)
	}
	if err := d.client.Transcode.Delete(ctx, fileID, pan123.DeleteMode(req.Mode)); err != nil {
		return nil, err
	}
	return okResult{Success: true}, nil
}

func otherTranscodeDownloadOriginal(d *Open123, ctx context.Context, args model.OtherArgs) (interface{}, error) {
	var req fileIDRequest
	if err := decodeOtherArgs(args.Data, &req); err != nil {
		return nil, err
	}
	fileID, err := resolveFileID(args, req.FileID)
	if err != nil {
		return nil, err
	}
	return d.client.Transcode.DownloadOriginal(ctx, fileID)

View on GitHub (pinned to 843d9dc814)

Solutions

  1. Inspect the underlying error details in the message, fix the indicated cause (credentials, network, or provider-side failure), and retry.

When it happens

Trigger: Thrown at drivers/123_open/other.go:800 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of AlistGo/alist@843d9dc814 (2026-08-15). Data as JSON: /api/errors/92deac244dfce933. Report an issue: GitHub.