Reincubare il servizio di inoltro

sessioni
Un processo di associazione viene utilizzato per stabilire un collegamento tra un utente dell'API e un'istanza dell'app Reincubate Relay. Per impostazione predefinita, se non accoppiato, il relè di reincubazione visualizzerà il suo codice di accoppiamento. L'utente deve dare questo alla tua applicazione affinché possa creare una sessione valida, tramite la seguente chiamata.
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": "rirelay.instance" }, "payload": { "code": "<Reincubate Relay pairing code>" } }'
Una volta creata la sessione, sarai in grado di visualizzare le informazioni sull'istanza dell'app tramite l'attributo source
dell'oggetto sessione. Questo dovrebbe assomigliare a questo:
{ "id": "<session ID>", "resource": "session", ... "source": { "id": "<source ID>", "resource": "source", "user": "<user ID>", "type": "rirelay.instance", "identifier": "ee360f13-1b54-4d8c-8876-e5f573f0ba1c", "info": null, "parent": null, "children": { "data": [ { "id": "<child source ID>", "resource": "source", "user": "<user ID>", "type": "rirelay.source", "identifier": "70a4982e-5893-4a5f-8af6-19db834d378d", "info": { "is_encrypted": true, "apple_model_id": "iPhone10,4", "apple_serial": "FFABCZGTJC12", "name": "iPhone 8", "ios_version": "13.2" }, "children": { "data": [], "has_more": false, "total_count": 0, "url": "/sources/<child source ID>/children" }, "state": "active", "date_created": "2019-10-08T09:02:15.770532Z" } ], "has_more": false, "total_count": 0, "url": "/sources/<source ID>/children" }, "state": "active", "date_created": "2019-10-08T08:58:33.861941Z" }, ... }
Sottoscrizioni
A differenza di altri servizi, è necessario un abbonamento prima che l'API possa iniziare a recuperare i dati da un'origine Reincubate Relay. Questo per aiutare l'utente dell'app a capire esattamente a quali dati si accede.
Le sottoscrizioni possono essere create solo su rirelay.source
tipo rirelay.source
, che sono i figli dell'istanza Reincubate Relay. È necessario specificare anche la sessione da utilizzare per il polling della fonte.
curl https://ricloud-api.reincubate.com/subscriptions \ -X POST \ -H 'Authorization: Token <your key_token>' \ -H 'Content-Type: application/json' \ -d '{ "session": "<session ID>", "source": "<child source ID>", "poll_payload": { "data_types": ["ios_messages.messages"] } }'
L'abbonamento rimarrà in sospeso fino a quando l'utente non avrà autorizzato l'accesso al dispositivo specifico nell'interfaccia dell'app Reincubate Relay. Una volta che è stato consentito, lo stato passerà a active
.
Un sondaggio iniziale viene immediatamente creato all'attivazione della sottoscrizione, quindi i sondaggi successivi verranno creati quando l'app Reincubate Relay notifica all'API di nuovi dati.
sondaggi
I sondaggi possono anche essere creati manualmente su origini con abbonamenti attivi. Ciò è utile durante la risoluzione dei problemi dei dati recuperati o durante il test di nuovi tipi di dati.
curl https://ricloud-api.reincubate.com/polls \ -X POST \ -H 'Authorization: Token <your key_token>' \ -H 'Content-Type: application/json' \ -d '{ "subscription": "<subscription ID>", "payload": { "data_types": ["ios_phone.calls", "whatsapp.messages"] } }'
eventi
Per rimanere informato delle modifiche asincrone, come una sottoscrizione che crea un nuovo sondaggio o una scadenza della sessione, l'implementazione dovrà ricevere notifiche di eventi dall'API tramite un endpoint webhook.
Per i dettagli su come impostare e configurare l'endpoint del webhook, consultare la sezione relativa alla configurazione dei webhook .
Tipi di informazioni
Il servizio di inoltro attualmente supporta solo il recupero di informazioni da fonti rirelay.instance
.
Attributi rirelay.instance.info
nome | genere | descrizione |
---|---|---|
id | ID sorgente | ID dell'oggetto sorgente corrispondente a questa istanza di inoltro. |
version | str | Versione dell'app Reincubate Relay. |
os | str | Identificatore del sistema operativo su cui è in esecuzione l'app Reincubate Relay. |
sources | elenco di rirelay.source.info | Elenco di fonti associate all'istanza. |
date_created | appuntamento | Datetime quando questa istanza è stata vista per la prima volta. |
date_last_seen | appuntamento | Datetime quando è stata vista l'ultima volta questa istanza. |
Attributi rirelay.source.info
nome | genere | descrizione |
---|---|---|
id | ID sorgente | ID dell'oggetto sorgente corrispondente a questa origine relè. |
uid | str | L'ID univoco del dispositivo iOS della sorgente di inoltro. |
info | rirelay.source.info.info nidificato | Metadati per questa fonte di inoltro. |
date_created | appuntamento | Datetime quando questa fonte è stata vista per la prima volta. |
date_last_seen | appuntamento | Datetime quando questa fonte è stata vista l'ultima volta. |
Attributi rirelay.source.info.info
nome | genere | descrizione |
---|---|---|
name | str | Nome della sorgente di inoltro. |
ios_version | str | Versione di iOS in esecuzione sulla sorgente di inoltro, ovvero 13.4 . |
apple_model_id | str | ID modello della sorgente di inoltro, ovvero iPhone7,2 . |
apple_serial | str | Numero di serie della sorgente di inoltro, ovvero F4KPWDR7G5DN . |
phone_number | opzionale, str | Numero di telefono della sorgente di inoltro. |
is_encrypted | bool | Se l'origine di inoltro è impostata per produrre backup crittografati. |
Tipi di dati
Reincubare i tipi di dati dell'app di inoltro
identificatore | descrizione |
---|---|
ios_messages.messages | Recupera i dati dei messaggi iOS inclusi 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 delle note iOS. |
ios_health.data | Recupera i dati di 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 di Viber. |
viber.calls | Recupera la cronologia delle chiamate di Viber. |
viber.conversations | Recupera conversazioni Viber. |
viber.contacts | Recupera i contatti di Viber. |
kik.messages | Recupera i messaggi di Kik. |
kik.contacts | Recupera i contatti Kik. |
hike.messages | Recupera i messaggi di escursione. |
hike.posts | Recupera i post di escursione. |
wechat.messages | Recupera i messaggi di WeChat. |
tinder.messages | Recupera i messaggi di Tinder. |
line.messages | Recupera i messaggi di linea. |
facebook.messages | Recupera i messaggi di Facebook. |
snapchat.messages | Recupera i messaggi di Snapchat. |
snapchat.stories | Recupera storie su Snapchat. |
skype.messages | Recupera i messaggi di Skype. |
Reincubare i tipi di dati aggregati del relè
identificatore | descrizione |
---|---|
.photos | Scansiona il backup per i file di immagine. |
.videos | Scansiona il backup per i file video. |
.recordings | Scansiona il backup alla ricerca di file. |
.voicemails | Scansiona il backup alla ricerca di file Voicemail. |
.app_usage | Scansiona il backup alla ricerca di informazioni sull'utilizzo dell'app. |
.installed_apps | Esegue la scansione del backup alla ricerca di informazioni sull'app installata. |
.locations | Scansiona il backup alla ricerca di posizioni. |
.linked_watches | Esegue la scansione del backup per informazioni sull'Apple Watch collegato. |
Messaggi iOS
messaggi
ID tipo di dati | ios_messages.messages |
Attributi di dati
Estende il tipo di dati del message
.
Dati di esempio
{ "id": "a1b2c3d4", "data_type": "message", "conversation_id": "w6x7y8z9", "handle": "vodafone", "type": "SMS", "text": "Hi from Vodafone!", "attachments": [], "group_handles": [ "+441234567890", "renate@reincubate.com" ], "from_me": false, "deleted": false, "date": "2020-01-01T00:00:00.000000Z" }
Contatti iOS
Contatti
ID tipo di dati | ios_contacts.contacts |
Attributi di dati
Estende il tipo di dati di contact
.
Dati di esempio
{ "id": "2cf6a837304d6614", "data_type": "contact", "first_name": "John", "middle_name": "'Gala'", "last_name": "Appleseed", "prefix": "Mr.", "suffix": "Jr.", "nickname": "John'o", "records": [ { "type": "Phone", "name": "MAIN", "value": "1-800-MY-APPLE" }, { "type": "Phone", "name": "UK", "value": "0800 039 1010" }, { "type": "URL", "name": "HOMEPAGE", "value": "http://www.apple.com" }, { "type": "URL", "name": "HOMEPAGE", "value": "http://www.apple.com/uk/" }, { "City": "Cupertino", "State": "CA", "ZIP": "95014", "name": "WORK", "CountryCode": "US", "Country": "United States", "Street": "1 Infinite Loop", "type": "Address", "SubLocality": null, "Municipality": null } ], "organisation": "Apple Inc.", "department": "Marketing", "jobtitle": "VP Juicing", "birthday": "1976-04-01 00:00:00.000000Z" }
telefono iOS
chiamate
ID tipo di dati | ios_phone.calls |
Attributi di dati
Estende il tipo di dati della call
.
Dati di esempio
{ "id": "24116c5b16b85217", "data_type": "call", "call_type": "Phone", "address": "07123456789", "duration": 5.131359, "answered": false, "from_me": true, "date": "2015-07-20 10:23:27.538011" }
Calendario iOS
eventi
ID tipo di dati | ios_calendar.events |
Attributi di dati
Estende il tipo di dati event
.
Dati di esempio
{ "id": "3", "unique_identifier": "f5fcf872-34f6-3f60-ba03-74d5a7a3bbbb", "calendar": "Home", "calendar_id": "477a2001537fe178d6b77cdceb8bac2e", "calendar_store": "Default", "summary": "Christmas Day", "description": "Bank holiday in the UK", "start_date": "2017-12-25T00:00:00.000000", "end_date": "2017-12-25T23:59:59.000000", "start_time_zone": None, "end_time_zone": None, "all_day": True, "travel_time": None, "recurrence": { "interval": 1, "repeat": "Yearly", "repeat_end_date": None, "specifier": "" }, "location": None, "start_location": None, "attendees": ["John Appleseed"], "attached_url": None, "creation_date": None }
Note iOS
Appunti
ID tipo di dati | ios_notes.notes |
Attributi di dati
Estende il tipo di dati della note
.
iOS Health
Dati associati all'app iOS Health e al framework HealthKit.
Dati
ID tipo di dati | ios_health.data |
Attributi ios_health.profile
nome | genere | descrizione |
---|---|---|
info_type | stringa, sempre ios_health.profile | ID tipo di dati articolo. |
gender | stringa opzionale | Uno di: Female , Male , Other . |
date_of_birth | data facoltativa | La data di nascita del proprietario del profilo. |
weight | galleggiante opzionale | La misurazione del peso del proprietario del profilo, in chilogrammi. |
height | galleggiante opzionale | La misurazione dell'altezza del proprietario del profilo, in metri. |
blood_type | stringa opzionale | Il gruppo sanguigno del proprietario del profilo. |
fitzpatrick_skin_type | stringa opzionale | Il tipo di pelle Fitzpatrick del proprietario del profilo. Uno di: Type I , Type II , Type II , Type IV , Type V |
esempio ios_health.profile
{ "info_type": "ios_health.profile", "gender": "Female", "date_of_birth": "1988-08-22", "weight": 75.2543977, "height": 1.9812, "blood_type": "O+", "fitzpatrick_skin_type": "Type V" }
Attributi ios_health.sample
nome | genere | descrizione |
---|---|---|
id | corda | Numero identificativo dell'oggetto. |
data_type | corda | ID tipo di dati articolo. Uno dei tipi di dati di iOS Health. |
type | corda | Tipo di campione. Uno di: quantity , binary , category . |
value | uno di stringa, float, intero | Valore del campione. Il tipo di questo campo dipende dall'attributo del type esempio. |
unit | stringa opzionale | Impostare se un'unità campione non predefinita. |
was_user_entered | booleano | Se l'utente ha inserito questa misurazione manualmente. |
start_date | appuntamento | Quando è iniziato il periodo di campionamento. |
end_date | appuntamento | Al termine del periodo di campionamento. |
Tipi di dati di salute iOS:
ios_health.body_mass_index
ios_health.body_fat_percentage
ios_health.height
ios_health.weight
ios_health.lean_body_mass
ios_health.heart_rate
ios_health.steps
ios_health.walking_running_distance
ios_health.resting_energy
ios_health.active_energy
ios_health.flights_climbed
ios_health.oxygen_saturation
ios_health.blood_glucose
ios_health.systolic_blood_pressure
ios_health.diastolic_blood_pressure
ios_health.blood_alcohol_content
ios_health.peripheral_perfusion_index
ios_health.total_fat
ios_health.polyunsaturated_fat
ios_health.monounsaturated_fat
ios_health.saturated_fat
ios_health.dietary_cholesterol
ios_health.sodium
ios_health.carbohydrates
ios_health.fibre
ios_health.dietary_sugar
ios_health.dietary_energy
ios_health.protein
ios_health.vitamin_a
ios_health.vitamin_b6
ios_health.vitamin_b12
ios_health.vitamin_c
ios_health.vitamin_d
ios_health.vitamin_e
ios_health.vitamin_k
ios_health.calcium
ios_health.iron
ios_health.thiamine
ios_health.riboflavin
ios_health.niacin
ios_health.folate
ios_health.biotin
ios_health.pantothenic_acid
ios_health.phosphorous
ios_health.iodine
ios_health.magnesium
ios_health.zinc
ios_health.selenium
ios_health.copper
ios_health.manganese
ios_health.chromium
ios_health.molybdenum
ios_health.chloride
ios_health.potassium
ios_health.number_of_times_fallen
ios_health.electrodermal_activity
ios_health.inhaler_usage
ios_health.respiratory_rate
ios_health.body_temperature
ios_health.sleep_analysis
ios_health.forced_vital_capacity
ios_health.forced_expiration_volume_1
ios_health.peak_expiratory_flow_rate
ios_health.caffeine
ios_health.workout
ios_health.blood_pressure_correlation
ios_health.cycling_distance
ios_health.water
ios_health.uv_index
ios_health.basal_body_temperature
ios_health.cervical_mucus_quality
ios_health.ovulation_test_results
ios_health.menstruation
ios_health.spotting
ios_health.sexual_activity
Dati di esempio
{ "id": "a1b2c3d41", "data_type": "ios_health.walking_running_distance", "type": "quantity", "value": 6.08, "was_user_entered": false, "start_date": "2016-07-04T18:11:54.000000Z", "end_date": "2016-07-04T18:12:09.000000Z" }, { "id": "a1b2c3d42", "data_type": "ios_health.steps", "type": "quantity", "value": 8.0, "was_user_entered": false, "start_date": "2016-07-04T18:11:54.000000Z", "end_date": "2016-07-04T18:12:09.000000Z" }, { "id": "a1b2c3d43", "data_type": "ios_health.caffeine", "type": "quantity", "value": 800.0, "unit": "mg", "was_user_entered": true, "start_date": "2016-07-04T18:11:54.000000Z", "end_date": "2016-07-04T18:12:09.000000Z" }
Safari iOS
Storia
ID tipo di dati | ios_safari.history |
Attributi di dati
Estende il tipo di dati della visit
.
Dati di esempio
{ "data_type": "visit", "url": "https://reincubate.com/", "title": "Reincubate: the app data company", "date_created": "2020-01-01T00:00:00.000000Z" }
Biscotti
ID tipo di dati | ios_safari.cookies |
Attributi di dati
Estende il tipo di dati dei cookie
.
Dati di esempio
{ "data_type": "cookie", "name": "sample_cookies", "value": "sample_value", "domain": "reincubate.com", "path": "/", "flags": "", "creation_date": "2020-01-01T00:00:00.000000Z", "expiry_date": "2020-01-01T00:00:00.000000Z" }
messaggi
ID tipo di dati | whatsapp.messages |
attributi
Estende il tipo di dati del message
.
chiamate
ID tipo di dati | whatsapp.calls |
attributi
Estende il tipo di dati della call
.
-messages) | Recupera i messaggi di Viber. | ||
---|---|---|---|
viber.conversations | Recupera conversazioni Viber. | ||
[ viber.contacts ] (# viber-contact | |||
### Viber |
messaggi
ID tipo di dati | viber.messages |
attributi
Estende il tipo di dati del message
.
chiamate
ID tipo di dati | viber.calls |
attributi
Estende il tipo di dati della call
.
conversazioni
ID tipo di dati | viber.conversations |
attributi
Estende il tipo di dati di conversation
.
Contatti
ID tipo di dati | viber.contacts |
attributi
Estende il tipo di dati di contact
.
Kik
messaggi
ID tipo di dati | kik.messages |
attributi
Estende il tipo di dati del message
.
Contatti
ID tipo di dati | kik.contacts |
attributi
Estende il tipo di dati di contact
.
messaggi
ID tipo di dati | hike.messages |
attributi
Estende il tipo di dati del message
.
Messaggi
ID tipo di dati | hike.posts |
attributi
Estende il tipo di dati del message
.
messaggi
ID tipo di dati | wechat.messages |
attributi
Estende il tipo di dati del message
.
Tinder
messaggi
ID tipo di dati | tinder.messages |
attributi
Estende il tipo di dati del message
.
Linea
messaggi
ID tipo di dati | line.messages |
attributi
Estende il tipo di dati del message
.
Facebook Messenger
messaggi
ID tipo di dati | facebook.messenger |
attributi
Estende il tipo di dati del message
.
Snapchat
messaggi
ID tipo di dati | snapchat.messages |
attributi
Estende il tipo di dati del message
.
Storie
ID tipo di dati | snapchat.stories |
attributi
Estende il tipo di dati del message
.
Skype
messaggi
ID tipo di dati | skype.messages |
attributi
Estende il tipo di dati del message
.