Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is there an iCloud web api?

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?

like image 280
Mohamed Hafez Avatar asked Sep 06 '13 03:09

Mohamed Hafez


People also ask

Is there an API for iCloud?

This is an unofficial iCloud API that provides useful methods to interact with some services of iCloud.

Does Apple have an API?

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 do I access iCloud data from browser?

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.

What is the Web address for iCloud?

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.


2 Answers

Unfortunately no. There is currently no OAuth whatsoever for iCloud. However, there are two solutions to consider:

  1. 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.

  2. 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.

like image 190
thattyson Avatar answered Sep 18 '22 22:09

thattyson


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.

like image 40
Markus Unterwaditzer Avatar answered Sep 22 '22 22:09

Markus Unterwaditzer