145971
Goto Top

Synology Calendar API

Guten Morgen,

hat jemand schon Erfahrung mit der Synology Calendar API sammeln können?
https://global.download.synology.com/download/Document/Software/Develope ...

Versuche mich schon die letzten Tage daran und bin bislang schon sehr weit gekommen.
Was ich aktuell schon kann:

- [x] Login
- [x] Kalender abrufen
- [x] Termine abrufen
- [x] Termindetails abrufen
- [x] Termin bearbeiten
- [ ] Termin löschen
- [ ] Termin erstellen
- [x] Logout

Allerdings scheitere ich an 2 Stellen (löschen / erstellen).
Würde gerne mit dem "löschen" beginnen:

Habe dafür folgenden Code:


$curl = curl_init('https://IP:PORT/webapi/entry.cgi);  
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query(array(
					'api'				=>	'SYNO.Cal.Event',  
					'method'			=>	'delete',  
					'version'			=>	2,  
					'evt_id'			=>	'4972'  
				)));
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "POST");  
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($curl, CURLOPT_COOKIE, 'id='.$sid);  
curl_setopt($curl, CURLOPT_HTTPHEADER, array(
'X-SYNO-TOKEN: '.$synotoken  
));


echo json_decode(curl_exec($curl), TRUE);


Ergebnis:

Array
(
    [error] => Array
        (
            [code] => 103
        )

    [success] => 
)


Lt. Doku Seite 10 bedeutet Fehler 103 > The requested method does not exist
Lt. Seite 37 sollte es die Methode "delete" doch geben, oder sehe ich das falsch?

Content-Key: 666460

Url: https://administrator.de/contentid/666460

Printed on: April 23, 2024 at 17:04 o'clock

Mitglied: 148121
Solution 148121 May 06, 2021 updated at 10:35:18 (UTC)
Goto Top
Moin.
Hab jetzt keine Syno zum Testen, aber ich würde jetzt aus dem Stand mal folgendes probieren und die API Infos auslesen (über die API "SYNO.API.Info" pdf Seite 11 unter Retrieve API Information ) und mir anzeigen lassen welche API-Versionen gültig sind und dann mal das "version" Feld entsprechend ändern/ausprobieren, vielleicht ist die Delete-Methode ja aktuell nur unter bestimmten APIs nutzbar (steht zwar bei der Methode API Version 1, aber könnte ja sein)

Gruß w.
Mitglied: 145971
145971 May 07, 2021 at 05:37:01 (UTC)
Goto Top
habe ich probiert, bleibt aber beim selben Ergebnis.
Habe gestern allerdings noch die Lösung gefunden und versuche mich jetzt am Erstellen von Terminen face-smile
Mitglied: 148121
148121 May 07, 2021 updated at 05:57:25 (UTC)
Goto Top
Zitat von @145971:
Habe gestern allerdings noch die Lösung gefunden und versuche mich jetzt am Erstellen von Terminen face-smile
Dann poste für die Nachwelt doch bitte auch die Lösung damit alle anderen auch was von dem Post haben! Danke.
Mitglied: 145971
145971 May 07, 2021 at 07:52:00 (UTC)
Goto Top
natürlich !

ich musste noch zusätzlich den Parameter _sid mit dem sid value, welchen man nach dem Login erhält, übergeben.