Wochenplan - programmatisch erstellen / auslesen

Hallo,
ich habe einen Wochenplan.
7 Tage die Woche das gleiche Verhalten (21:30 einschalten, 22:00 ausschalten).

Nun wollte ich diesen auslesen (GetWeekPlanState) und aufgrund dieser ausgelesenen Daten täglich (oder wöchentlich) einen neuen Wochenplan erstellen.
Ziel ist es die Endzeit frei über die GUI konfigurierbar zu lassen. Die Startzeit möchte ich je nach Sonnenuntergang anpassen.
Wenn ich nun den aktuellen Wochenplan auslese bekomme ich folgende Werte.

[ActionID] => 2
[ActionName] => Aus
[CheckSysTime] => 1556601867
[CheckTime] => 30.04.2019 07:24:27
[StartSysTime] => 1556568000
[StartTime] => 29.04.2019 22:00:00
[EndSysTime] => 1556652600
[EndTime] => 30.04.2019 21:30:00
[Periode] => 84600
[PeriodeHours] => 23
[PeriodeMinutes] => 30
[PeriodeSeconds] => 0
[PreviousActionID] => 1
[PreviousActionName] => Ein
[NextActionID] => 1
[NextActionName] => Ein
[WeekPlanID] => 23490
[WeekPlanName] => Wochenplan
[WeekPlanActiv] => 1

Kann ich einen bestehenden Wochenplan „einfach“ kopieren oder darin einfach die „Startzeit“ ändern? Wobei diese bei mir der Eintrag „Endtime“ wäre. Aber das ist whl abhängig von der Uhrzeit wann ich ein Eintrag betrachte.

Bitte um eure Unterstützung.