diff --git a/backend/src/services/emailProvider/pleskProvider.ts b/backend/src/services/emailProvider/pleskProvider.ts index 60bcd72e..83c56f8c 100644 --- a/backend/src/services/emailProvider/pleskProvider.ts +++ b/backend/src/services/emailProvider/pleskProvider.ts @@ -507,14 +507,26 @@ export class PleskEmailProvider implements IEmailProvider { // Mails landen weiterhin bei den Mailgroup-Members. // Der Service-Layer importiert vorher die Mailgroup-Members in die // `targets`-Liste, damit beim Umschalten nichts verloren geht. - await this.request('POST', '/api/v2/cli/mail/call', { - params: [ - '--update', email, - '-mailgroup', 'false', - '-forwarding', 'true', - '-forwarding-addresses', `set:${targets.join(',')}`, - ], - }); + const cliParams = [ + '--update', email, + '-mailgroup', 'false', + '-forwarding', 'true', + '-forwarding-addresses', `set:${targets.join(',')}`, + ]; + console.log('[Plesk updateForwardTargets] CLI params:', cliParams); + const result = await this.request<{ code: number; stdout: string; stderr: string }>( + 'POST', + '/api/v2/cli/mail/call', + { params: cliParams }, + ); + console.log('[Plesk updateForwardTargets] response:', JSON.stringify(result, null, 2)); + + if (result.code !== 0 || /error|failed/i.test(result.stderr || '')) { + return { + success: false, + error: result.stderr?.trim() || result.stdout?.trim() || `Plesk returned code ${result.code}`, + }; + } return { success: true,