I'd like to be able to access a user's iCal and create events from my server, is this possible, preferably with some kind of OAuth2 setup like with Google Calendar? If so where can i find documentation on the API?
This is an unofficial iCloud API that provides useful methods to interact with some services of iCloud.
The Sign in with Apple REST API is a web service that connects you to Apple's authentication servers. Use this service to generate and validate the identity tokens used to verify a user's identity. To sign in from a web app or other platform, like Android, use Sign in with Apple JS.
How to Access iCloud From a Web Browser. Visit the iCloud.com website on your web browser of choice. Enter your Apple ID, password, and two-factor authentication code if the feature is enabled. Once logged in, you can use the iCloud web apps to access your data, documents, and photos.
To get started, open any browser on your computer (Windows 10, Mac, or Linux), iPhone, iPad, or Android smartphone or tablet. Then, type the www.icloud.com/mail URL into your address bar.
Unfortunately no. There is currently no OAuth whatsoever for iCloud. However, there are two solutions to consider:
Ask the user for their AppleID and password and store it on your server (not recommended for security reasons). This will allow access to EVERYTHING the user has enabled on their account; even the ability to log in and purchase content - thus the security issue. But it will give you direct access to iCal.
Ask the user for access to calendar through your app. Using EKEventStore requestAccessToEntityType: method you can gain access to the users local calendar. You could batch those events and send them to your server. You can find information on how to access calendar here.
It is possible. iCloud supports CalDAV on caldav.icloud.com
, and that quite well. It allows you to create, modify and delete events and tasks. Unfortunately you have to have the user's credentials for this though.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With