Servizio iCloud di Apple

aggiornato

L'API supporta il recupero di una varietà di dati e file dai servizi iCloud di Apple. Ciò include l'accesso ai dati di backup di iCloud del dispositivo, i dati di Find My iPhone e una serie di fonti di dati CloudKit quasi in tempo reale.

sessioni

L'impostazione di una sessione per i servizi iCloud sull'API è semplice come un accesso a un account iCloud. Il processo può richiedere più tentativi di creazione della sessione se l'account ha abilitato l'autenticazione a più fattori, come 2FA o 2SV.

La prima chiamata per creare una sessione appare come di seguito.

curl https://ricloud-api.reincubate.com/sessions \
  -X POST \
  -H 'Authorization: Token <your key_token>' \
  -H 'Content-Type: application/json' \
  -d '{
  "source": {
    "user": "1",
    "type": "icloud.account",
    "identifier": "<iCloud account username>"
  },
  "payload": {
    "password": "<iCloud account password>"
  }
}'

Per gli account non abilitati 2FA / non 2SV, questo sarà sufficiente per stabilire una sessione attiva a condizione che le credenziali fornite siano valide.

Tuttavia, un account con 2FA abilitato riceverà una risposta all'errore code-required e il processo 2FA verrà attivato sui dispositivi collegati all'account che invieranno loro un codice 2FA. Questo codice deve essere fornito all'API nella prossima chiamata di creazione della sessione.

curl https://ricloud-api.reincubate.com/sessions \
  -X POST \
  -H 'Authorization: Token <your key_token>' \
  -H 'Content-Type: application/json' \
  -d '{
  "source": {
    "user": "1",
    "type": "icloud.account",
    "identifier": "<iCloud account username>"
  },
  "payload": {
    "password": "<iCloud account password>",
    "code": "<fresh 2FA code>"
  }
}'

Infine, un account con 2SV abilitato riceverà una risposta all'errore choice-required , insieme a un elenco di possibili dispositivi collegati all'account che possono essere attivati per completare il processo 2SV.

curl https://ricloud-api.reincubate.com/sessions \
  -X POST \
  -H 'Authorization: Token <your key_token>' \
  -H 'Content-Type: application/json' \
  -d '{
  "source": {
    "user": "1",
    "type": "icloud.account",
    "identifier": "<iCloud account username>"
  },
  "payload": {
    "password": "<iCloud account password>",
    "choice": "<choice identifier from choices fields of `choice-required` error>"
  }
}'

Questa chiamata attiverà un codice da inviare al dispositivo scelto, che potrà quindi essere utilizzato come nel payload per completare il processo di inizializzazione della sessione.

I parametri accettati dal carico utile per la creazione di sessioni sono riepilogati nella tabella seguente.

nome genere descrizione
parola d'ordine stringa La password dell'account iCloud.
codice facoltativo, stringa Se l'account iCloud ha più fattori (come 2FA) abilitati, questo parametro sarà richiesto.
scelta facoltativo, stringa Se l'account iCloud ha 2SV abilitato, questo parametro sarà richiesto durante il processo di creazione della sessione.

Tipi di fonte

identificatore descrizione
icloud.account fonte primaria Corrisponde a un account iCloud.
icloud.backup Il backup iCloud di un dispositivo iOS.

sondaggi

Il servizio iCloud supporta tutti gli attributi dello schema di payload del sondaggio.

Recupero delle informazioni sulla fonte

Questo tipo di sondaggio recupera informazioni sulla fonte mirata. I risultati sono pubblicati in formato JSON.

Ad esempio, le informazioni di una fonte icloud.account restituiranno i dettagli dell'account, l'elenco dei backup di iCloud ( icloud.backup figlio icloud.backup ) e altre meta informazioni.

Utilizzando cURL

curl https://ricloud-api.reincubate.com/polls \
  -X POST \
  -H 'Authorization: Token <your key_token>' \
  -H 'Content-Type: application/json' \
  -d '{
    "session": "<session ID>",
  "payload": {
    "info_types": ["*"]
  }
}'

Utilizzando * ricloud-py *

import ricloud

# The ID of a session we made earlier.
session_id = "<session ID>"

poll = ricloud.Poll.create(
  session=session_id,
  payload={
    "info_types": ["*"]
  }
)

Recupero dati

Questo tipo di sondaggio recupera ed elabora i dati dalla sessione di destinazione. I risultati sono pubblicati in formato JSON.

Vedere l' elenco dei tipi di dati disponibili per ulteriori informazioni su tipi di dati specifici.

Utilizzando cURL

curl https://ricloud-api.reincubate.com/polls \
  -X POST \
  -H 'Authorization: Token <your key_token>' \
  -H 'Content-Type: application/json' \
  -d '{
    "session": "<session ID>",
    "payload": {
        "data_types": ["icpl.photos"]
    }
}'

Utilizzando * ricloud-py *

import ricloud

# The ID of a session we made earlier.
session_id = "<session ID>"

poll_payload = {
    "data_types": ["icpl.photos"]
}

poll = ricloud.Poll.create(
  session=session_id,
  payload=poll_payload,
)

Recupero di file

L'attributo payload del poll dei files ha specificato il recupero di file binari da un backup. Gli ID vengono in genere recuperati da un sondaggio precedente per i tipi di dati che includono riferimenti a file diretti, come foto o che includono allegati, come tipi di dati dei messaggi.

Utilizzando cURL

curl https://ricloud-api.reincubate.com/polls \
  -X POST \
  -H 'Authorization: Token <your key_token>' \
  -H 'Content-Type: application/json' \
  -d '{
    "session": "<session ID>",
    "payload": {
        "files": [
            "icpl://01a266abcd6c1a74056891b9c7ed9016b0c319ecabc1e7d658896f59c305768f71961fef92091cfed21f",
            "icpl://0167ba732e5f53e20efd7b0a1d859abcdd97e698af01afc3ab2f1d65880f7abcce0bfb89142ee770fac5"
        ]
    }
}'

Utilizzando * ricloud-py *

import ricloud

# The ID of a session we made earlier.
session_id = "<session ID>"

poll_payload = {
    'files': [
        'icpl://01a26621ad6c1a74056891b9c7ed9016b0c319ec0d01e7d658896f59c305768f71961fef92091cfed21f',
        'icpl://0167ba732e5f53e20efd7b0a1d8593b0dd97e698af01afc3ab2f1d65880f713dce0bfb89142ee770fac5',
    ]
}

poll = ricloud.Poll.create(
  session=session_id,
  payload=poll_payload,
)

Tipi di dati

Tipi di dati iCloud

identificatore descrizione
icpl.photos Recupera i file della libreria di foto di iCloud.
mme_contacts.contacts Recupera i dati dei contatti iOS memorizzati di iCloud.
mme_calendar.events Recupera i dati del calendario iOS memorizzati di iCloud.
mme_notes.notes Recupera i dati di iOS Notes memorizzati su iCloud.
callkit.calls Recupera i dati del telefono iOS sincronizzati con CallKit.
cloudkit_safari.history Recupera i dati storici del browser Safari memorizzati su iCloud.
fmip.locations Recupera Trova i dati relativi ai miei iPhone.

Tipi di dati dell'app di backup iCloud

identificatore descrizione
ios_messages.messages Recupera i dati dei messaggi iOS compresi iMessage e SMS.
ios_contacts.contacts Recupera i dati dei contatti iOS.
ios_phone.calls Recupera i dati del telefono iOS.
ios_calendar.events Recupera i dati del calendario iOS.
ios_notes.notes Recupera i dati di iOS Notes.
ios_health.data Recupera i dati sulla salute di iOS.
ios_safari.history Recupera i dati della cronologia del browser Safari.
ios_safari.cookies Recupera i dati dei cookie di Safari.
whatsapp.messages Recupera i messaggi di WhatsApp.
whatsapp.calls Recupera la cronologia delle chiamate di WhatsApp.
viber.messages Recupera i messaggi Viber.
viber.calls Recupera la cronologia delle chiamate di Viber.
viber.conversations Recupera conversazioni Viber.
viber.contacts Recupera i contatti Viber.
kik.messages Recupera i messaggi Kik.
kik.contacts Recupera i contatti Kik.
hike.messages Recupera i messaggi di escursione.
hike.posts Recupera post Hike.
wechat.messages Recupera messaggi WeChat.
tinder.messages Recupera i messaggi Tinder.
line.messages Recupera i messaggi Line.
facebook.messages Recupera i messaggi di Facebook.
snapchat.messages Recupera i messaggi Snapchat.
snapchat.stories Recupera storie di Snapchat.
skype.messages Recupera i messaggi Skype.

Tipi di dati aggregati di backup iCloud

identificatore descrizione
.photos Esegue la scansione di un backup iCloud per i file di immagine.
.videos Esegue la scansione di un backup iCloud per i file video.
.recordings Esegue la scansione di un backup iCloud per la registrazione dei file.
.voicemails Esegue la scansione di un backup iCloud per i file Voicemail.
.app_usage Esegue la scansione di un backup iCloud per le informazioni sull'utilizzo dell'app.
.installed_apps Esegue la scansione di un backup iCloud per le informazioni sull'app installate.
.locations Esegue la scansione di un backup iCloud per le posizioni.
.linked_watches Esegue la scansione di un backup iCloud per informazioni Apple Watch collegate.

iCloud Photo Library

Foto icpl.photos

Recupera le foto archiviate nel servizio Libreria foto iCloud.

attributo descrizione
fonte icloud.account
Ambientazione Settings > [username] > iCloud > Photos > iCloud Photo Library

CallKit

Chiamate da CallKit callkit.calls

Recupera i registri delle chiamate sincronizzati con il servizio CallKit.

Errori

callkit-uninitialised

Indica che il servizio CallKit non è stato impostato per questo account. Il proprietario dell'account iCloud può risolvere questo errore utilizzando un dispositivo iOS associato all'account iCloud tramite i seguenti passaggi: - Assicurati che il dispositivo sia connesso al Wi-Fi. - Passa a Settings > [username] > iCloud . - Disattiva iCloud Drive, aspettando da 30 a 60 secondi affinché la modifica abbia effetto. - Attiva iCloud Drive una volta completata la modifica precedente. Ciò dovrebbe innescare l'inizializzazione.

Se l'errore persiste dopo aver eseguito questo processo, contattare l'assistenza.

callkit-sync-disabled

In questo caso, il servizio CallKit è stato inizializzato ma non sono state soddisfatte le condizioni necessarie affinché i dispositivi inizino a sincronizzare la cronologia delle chiamate con iCloud. L'API lo risolverà da remoto tramite iCloud, ma il dispositivo associato all'account iCloud potrebbe non rivalutare il loro stato di sincronizzazione in quanto è memorizzato nella cache.

Il proprietario dell'account iCloud può attivare un dispositivo per ricontrollare le condizioni di sincronizzazione della cronologia delle chiamate tramite i seguenti passaggi:

  • Passa a Settings > [username] > iCloud .
  • Spegni iCloud Drive, aspettando da 30 a 60 secondi affinché la modifica abbia effetto.
  • Accendi iCloud Drive una volta completata la modifica precedente. Ciò dovrebbe innescare l'inizializzazione.

Risoluzione dei problemi

  • La cronologia delle chiamate recenti non viene restituita nei risultati del sondaggio.

Ciò è in genere causato dal fatto che il dispositivo non ha sincronizzato i suoi ultimi record di cronologia chiamate con iCloud. Il servizio CallKit è un servizio iOS interno e non può essere attivato o disattivato nelle impostazioni o attivato per la sincronizzazione manuale. Ciò può rendere difficile il debug dei dati mancanti poiché non è chiaro cosa ha sincronizzato o meno il dispositivo con iCloud.

Questo problema è più comune per gli account che non hanno molti dati da sincronizzare (meno di ~ 3 chiamate), il che può essere spesso il caso per verificare gli account.

raccomandazioni:

  • Assicurati che il dispositivo abbia più di una manciata di record della cronologia delle chiamate da sincronizzare. I nostri test hanno dimostrato che un dispositivo con solo un paio di record della cronologia delle chiamate non attiverà il processo di sincronizzazione di iCloud.
  • Attendere che il dispositivo esegua una sincronizzazione periodica. Questa operazione può richiedere fino a 12 ore a seconda dell'utilizzo del dispositivo, dello stato di connettività e dello stato di carica.
  • Collegare il dispositivo all'alimentazione. È più probabile che il dispositivo attivi una sincronizzazione in questo stato.

  • La cronologia delle chiamate precedenti non viene restituita nei risultati del sondaggio.

Il servizio CallKit è progettato per sincronizzare i record della cronologia delle chiamate tra dispositivi e non per archiviare questi record a tempo indeterminato. In genere, i record della cronologia delle chiamate possono essere richiamati da CallKit per circa 3 mesi, ma ciò può variare a seconda dei processi di pulizia interni in iCloud.

CloudKit

Cronologia del browser da iCloud cloudkit_safari.history

Recupera i dati della cronologia del browser Safari memorizzati nel servizio di sincronizzazione iCloud.

MobileMe

Contatti da iCloud mme_contacts.contacts

Recupera i dati dei contatti iOS memorizzati di iCloud.

Calendario da iCloud mme_calendar.events

Recupera i dati del calendario iOS memorizzati di iCloud.

Note da iCloud mme_notes.notes

Recupera i dati di iOS Notes memorizzati su iCloud.

Trova il mio iPhone

Posizioni fmip.locations

Recupera Trova i dati sulla posizione del mio iPhone.

App iOS

Messaggi ios_messages.messages

Recupera i dati dei messaggi iOS compresi iMessage e SMS.

Contatti ios_contacts.contacts

Recupera i dati dei contatti iOS.

Telefono ios_phone.calls

Recupera i dati del telefono iOS.

Calendario ios_calendar.events

Recupera i dati del calendario iOS.

Note ios_notes.notes

Recupera i dati di iOS Notes.

Salute ios_health.data

Recupera i dati sulla salute di iOS. Spesso indicati come dati HealthKit.

Safari

Cronologia del browser dai backup ios_safari.history

Recupera i dati della cronologia del browser Safari da un backup iCloud.

Cookie ios_safari.cookies

Recupera i dati dei cookie di Safari da un backup iCloud.

WhatsApp

Messaggi whatsapp.messages

Recupera i messaggi di WhatsApp.

Chiama whatsapp.calls

Recupera la cronologia delle chiamate di WhatsApp.

Viber

Messaggi viber.messages

Recupera i messaggi Viber.

Chiama viber.calls

Recupera la cronologia delle chiamate di Viber.

Conversazioni viber.conversations

Recupera conversazioni Viber.

Contatti viber.contacts

Recupera i contatti Viber.

Kik

Messaggi kik.messages

Recupera i messaggi Kik.

Contatti kik.contacts

Recupera i contatti Kik.

escursione

Messaggi hike.messages

Recupera i messaggi di escursione.

Post hike.posts

Recupera post Hike.

wechat

Messaggi wechat.messages

Recupera messaggi WeChat.

Tinder

Messaggi tinder.messages

Recupera i messaggi Tinder.

Linea

Messaggi line.messages

Recupera i messaggi Line.

Facebook

Messaggi facebook.messages

Recupera i messaggi di Facebook.

Snapchat

Messaggi snapchat.messages

Recupera i messaggi Snapchat.

Storie snapchat.stories

Recupera storie di Snapchat.

Skype

Messaggi skype.messages

Recupera i messaggi Skype.

aggregatori

Foto .photos

Aggrega i file immagine da un backup iCloud.

Video .videos

Aggrega i file video da un backup iCloud.

Registrazioni .recordings Registrazioni

Aggrega i file di registrazione da un backup iCloud.

messaggi vocali .voicemails

Aggrega i file voicemail da un backup iCloud.

Utilizzo app. .app_usage

Aggrega le informazioni sull'utilizzo dell'app da un backup iCloud.

App installate .installed_apps

Gli aggregati hanno installato le informazioni sull'app da un backup iCloud.

Posizioni .locations

Aggrega i dati delle posizioni da un backup iCloud.

Orologi collegati .linked_watches

Aggregati collegati a Apple Osserva le informazioni da un backup iCloud.

Tipi di file

identificatore descrizione
backup o nessun protocollo Un file da un backup iCloud.
icpl Un file dalla libreria di foto di iCloud.

Tipi di dati legacy

Tipi di dati iCloud

nome legacy nuovo nome
live_photos icpl.photos
mobileme_contacts mme_contacts.contacts
mobileme_calendar mme_calendar.events
mobileme_notes mme_notes.notes
live_call_history callkit.calls
web_browser_history cloudkit_safari.history
location fmip.locations

Tipi di dati di backup

nome legacy nuovo nome
photos .photos
videos .videos
recordings .recordings
voicemail .voicemails
app_usage .app_usage
installed_apps .installed_apps
locations .locations
linked_watches .linked_watches
sms ios_messages.messages
contacts ios_contacts.contacts
call_history ios_phone.calls
calendar_appointments ios_calendar.events
notes ios_notes.notes
healthkit ios_health.data
browser_history ios_safari.history
safari_cookies ios_safari.cookies
whatsapp_messages whatsapp.messages
whatsapp_call_history whatsapp.calls
viber_messages viber.messages
viber_call_history viber.calls
viber_conversations viber.conversations
viber_contacts viber.contacts
kik_messages kik.messages
kik_contacts kik.contacts
hike_messages hike.messages
hike_posts hike.posts
wechat_messages wechat.messages
tinder_messages tinder.messages
line_messages line.messages
facebook_messages facebook.messages
snapchat_messages snapchat.messages
snapchat_stories snapchat.stories
skype_messages skype.messages

Come possiamo aiutare?

Il nostro team di supporto è qui per aiutarti!

I nostri orari di ufficio sono dal lunedì al venerdì, dalle 9:00 alle 17:00 GMT. L'ora è attualmente 1:09 AM GMT.

Miriamo a rispondere a tutti i messaggi entro un giorno lavorativo.

Vai alla sezione di supporto › Contatta il team aziendale ›
Il nostro fantastico team di supporto

© 2008 - 2019 Reincubate Ltd. Tutti i diritti riservati. Registrato in Inghilterra e Galles #5189175, VAT GB151788978. Reincubate® è un marchio registrato. Termini e Condizioni. Raccomandiamo 2FA. Costruito con a Londra.