Service de relais de réincubation
Sessions
Un processus de couplage est utilisé pour établir un lien entre un utilisateur de l'API et une instance d'application Reincubate Relay. Par défaut, s'il n'est pas apparié, le relais de réincubation affichera son code d'appariement. L’utilisateur doit donner cela à votre application pour que celle-ci puisse créer une session valide, via l’appel suivant.
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>" } }'
Une fois la session créée, vous pourrez afficher des informations sur l'instance de l'application via l'attribut source l'objet de session. Cela devrait ressembler à ceci:
{ "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" }, ... }
Abonnements
Contrairement aux autres services, un abonnement est nécessaire pour que l'API puisse commencer à récupérer les données d'une source Reincubate Relay. Ceci est pour aider l'utilisateur de l'application à comprendre exactement quelles données sont consultées.
Les abonnements ne peuvent être créés que contre des sources de type rirelay.source , qui sont les enfants de l'instance Reincubate Relay. La session à utiliser lors de l'interrogation de la source doit également être spécifiée.
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'abonnement restera en attente jusqu'à ce que l'utilisateur ait autorisé l'accès au périphérique spécifique dans l'interface de l'application Reincubate Relay. Une fois que cela a été autorisé, l'état passera à l'état active .
Une interrogation initiale est immédiatement créée lors de l'activation de l'abonnement, puis des interrogations ultérieures sont créées lorsque l'application Reincubate Relay informe l'API de nouvelles données.
Les sondages
Les sondages peuvent également être créés manuellement sur des sources avec des abonnements actifs. Ceci est utile lors du dépannage des données extraites ou lors du test de nouveaux types de données.
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"] } }'
Événements
Pour rester informé des modifications asynchrones, telles qu'un abonnement créant un nouveau sondage ou une session expirant, votre implémentation devra recevoir des notifications d'événement de l'API via un point de terminaison Webhook.
Pour plus d'informations sur la configuration et le paramétrage de votre terminal Webhook, reportez-vous à la section configuration de Webhook .
Types d'informations
Le service Relay ne prend actuellement en charge que la récupération d'informations à partir de sources rirelay.instance .
rirelay.instance.info
| prénom | type | la description |
|---|---|---|
id | ID source | ID de l'objet source correspondant à cette instance de relais. |
version | str | Version de l'application Reincubate Relay. |
os | str | Identifiant du système d'exploitation sur lequel l'application Reincubate Relay est exécutée. |
sources | liste de rirelay.source.info | Liste des sources associées à l'instance. |
date_created | datetime | Datetime lorsque cette instance a été vue pour la première fois. |
date_last_seen | datetime | Datetime lorsque cette instance a été vue pour la dernière fois. |
rirelay.source.info
| prénom | type | la description |
|---|---|---|
id | ID source | ID de l'objet source correspondant à cette source de relais. |
uid | str | ID d'appareil iOS unique de la source de relais. |
info | rirelay.source.info.info imbriqué.source.info.info | Métadonnées pour cette source de relais. |
date_created | datetime | Datetime lorsque cette source a été vue pour la première fois. |
date_last_seen | datetime | Date et heure de la dernière visualisation de cette source. |
rirelay.source.info.info
| prénom | type | la description |
|---|---|---|
name | str | Nom de la source du relais. |
ios_version | str | Version d'iOS fonctionnant sur la source Relay, soit 13.4 . |
apple_model_id | str | ID du modèle de la source de relais, c'est-à-dire iPhone7,2 . |
apple_serial | str | Numéro de série de la source relais, c.-à- F4KPWDR7G5DN . F4KPWDR7G5DN . |
phone_number | facultatif, str | Numéro de téléphone de la source relais. |
is_encrypted | bool | Indique si la source de relais est définie pour produire des sauvegardes chiffrées. |
Types de données
Types de données de l'application Reincubate Relay
| identifiant | la description |
|---|---|
ios_messages.messages | Récupère les données des messages iOS, y compris iMessage et SMS. |
ios_contacts.contacts | Récupère les données des contacts iOS. |
ios_phone.calls | Récupère les données du téléphone iOS. |
ios_calendar.events | Récupère les données du calendrier iOS. |
ios_notes.notes | Récupère les données iOS Notes. |
ios_health.data | Récupère les données de santé iOS. |
ios_safari.history | Récupère les données d'historique du navigateur Safari. |
ios_safari.cookies | Récupère les données des cookies Safari. |
whatsapp.messages | Récupère les messages WhatsApp. |
whatsapp.calls | Récupère l'historique des appels WhatsApp. |
viber.messages | Récupère les messages Viber. |
viber.calls | Récupère l'historique des appels Viber. |
viber.conversations | Récupère les conversations Viber. |
viber.contacts | Récupère les contacts Viber. |
kik.messages | Récupère les messages Kik. |
kik.contacts | Récupère les contacts Kik. |
hike.messages | Récupère les messages de randonnée. |
hike.posts | Récupère les messages de randonnée. |
wechat.messages | Récupère les messages WeChat. |
tinder.messages | Récupère les messages de Tinder. |
line.messages | Récupère les messages de ligne. |
facebook.messages | Récupère les messages Facebook. |
snapchat.messages | Récupère les messages Snapchat. |
snapchat.stories | Récupère les histoires Snapchat. |
skype.messages | Récupère les messages Skype. |
Types de données agrégés Reincubate Relay
| identifiant | la description |
|---|---|
.photos | Analyse la sauvegarde pour les fichiers image. |
.videos | Analyse la sauvegarde des fichiers vidéo. |
.recordings | Analyse la sauvegarde pour les fichiers d'enregistrement. |
.voicemails | Analyse la sauvegarde pour les fichiers de messagerie vocale. |
.app_usage | Analyse la sauvegarde pour obtenir des informations sur l'utilisation de l'application. |
.installed_apps | Analyse la sauvegarde pour les informations de l'application installée. |
.locations | Analyse la sauvegarde pour les emplacements. |
.linked_watches | Analyse la sauvegarde pour les informations liées Apple Watch. |
Messages iOS
messages
| ID du type de données | ios_messages.messages |
Attributs de données
Étend le type de données du message .
Exemples de données
{ "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" }
Contacts iOS
Contacts
| ID du type de données | ios_contacts.contacts |
Attributs de données
Étend le type de données de contact .
Exemples de données
{ "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" }
Téléphone iOS
Appels
| ID du type de données | ios_phone.calls |
Attributs de données
Étend le type de données d' call .
Exemples de données
{ "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" }
Calendrier iOS
Événements
| ID du type de données | ios_calendar.events |
Attributs de données
Étend le type de données d' event .
Exemples de données
{ "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 }
Notes iOS
Remarques
| ID du type de données | ios_notes.notes |
Attributs de données
Étend le type de données de note .
Santé iOS
Données associées à l'application iOS Health et au framework HealthKit.
Les données
| ID du type de données | ios_health.data |
ios_health.profile
| prénom | type | la description |
|---|---|---|
info_type | chaîne, toujours ios_health.profile | ID du type de données de l'article. |
gender | chaîne facultative | Un parmi: Female , Male , Other . |
date_of_birth | date facultative | Date de naissance du propriétaire du profil. |
weight | flotteur en option | La mesure du poids du propriétaire du profil, en kilogrammes. |
height | flotteur en option | La mesure de la hauteur du propriétaire du profil, en mètres. |
blood_type | chaîne facultative | Le groupe sanguin du propriétaire du profil. |
fitzpatrick_skin_type | chaîne facultative | Type de peau Fitzpatrick du propriétaire du profil. Un de: Type I , Type II , Type II , Type IV , Type V |
Échantillon 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" }
ios_health.sample
| prénom | type | la description |
|---|---|---|
id | chaîne | ID de l'article. |
data_type | chaîne | ID du type de données de l'article. L'un des types de données iOS Health. |
type | chaîne | Échantillon type. L'un de: quantity , binary , category . |
value | une chaîne, flottant, entier | Exemple de valeur. Le type de ce champ dépend de l'attribut de type échantillon. |
unit | chaîne facultative | Définissez s'il s'agit d'une unité d'échantillonnage autre que celle par défaut. |
was_user_entered | booléen | Si l'utilisateur a saisi cette mesure manuellement. |
start_date | datetime | Quand la période d'échantillonnage a commencé. |
end_date | datetime | Quand la période d'échantillonnage s'est terminée. |
Types de données iOS Health:
ios_health.body_mass_indexios_health.body_fat_percentageios_health.heightios_health.weightios_health.lean_body_massios_health.heart_rateios_health.stepsios_health.walking_running_distanceios_health.resting_energyios_health.active_energyios_health.flights_climbedios_health.oxygen_saturationios_health.blood_glucoseios_health.systolic_blood_pressureios_health.diastolic_blood_pressureios_health.blood_alcohol_contentios_health.peripheral_perfusion_indexios_health.total_fatios_health.polyunsaturated_fatios_health.monounsaturated_fatios_health.saturated_fatios_health.dietary_cholesterolios_health.sodiumios_health.carbohydratesios_health.fibreios_health.dietary_sugarios_health.dietary_energyios_health.proteinios_health.vitamin_aios_health.vitamin_b6ios_health.vitamin_b12ios_health.vitamin_cios_health.vitamin_dios_health.vitamin_eios_health.vitamin_kios_health.calciumios_health.ironios_health.thiamineios_health.riboflavinios_health.niacinios_health.folateios_health.biotinios_health.pantothenic_acidios_health.phosphorousios_health.iodineios_health.magnesiumios_health.zincios_health.seleniumios_health.copperios_health.manganeseios_health.chromiumios_health.molybdenumios_health.chlorideios_health.potassiumios_health.number_of_times_fallenios_health.electrodermal_activityios_health.inhaler_usageios_health.respiratory_rateios_health.body_temperatureios_health.sleep_analysisios_health.forced_vital_capacityios_health.forced_expiration_volume_1ios_health.peak_expiratory_flow_rateios_health.caffeineios_health.workoutios_health.blood_pressure_correlationios_health.cycling_distanceios_health.waterios_health.uv_indexios_health.basal_body_temperatureios_health.cervical_mucus_qualityios_health.ovulation_test_resultsios_health.menstruationios_health.spottingios_health.sexual_activity
Exemples de données
{ "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" }
iOS Safari
Histoire
| ID du type de données | ios_safari.history |
Attributs de données
Étend le type de données de visit .
Exemples de données
{ "data_type": "visit", "url": "https://reincubate.com/", "title": "Reincubate: the app data company", "date_created": "2020-01-01T00:00:00.000000Z" }
Biscuits
| ID du type de données | ios_safari.cookies |
Attributs de données
Étend le type de données des cookie .
Exemples de données
{ "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" }
messages
| ID du type de données | whatsapp.messages |
Les attributs
Étend le type de données du message .
Appels
| ID du type de données | whatsapp.calls |
Les attributs
Étend le type de données d' call .
| -messages) | Récupère les messages Viber. | ||
|---|---|---|---|
viber.conversations | Récupère les conversations Viber. | ||
[ viber.contacts ] (# viber-contact | |||
| ### Viber |
messages
| ID du type de données | viber.messages |
Les attributs
Étend le type de données du message .
Appels
| ID du type de données | viber.calls |
Les attributs
Étend le type de données d' call .
Conversations
| ID du type de données | viber.conversations |
Les attributs
Étend le type de données de conversation .
Contacts
| ID du type de données | viber.contacts |
Les attributs
Étend le type de données de contact .
Kik
messages
| ID du type de données | kik.messages |
Les attributs
Étend le type de données du message .
Contacts
| ID du type de données | kik.contacts |
Les attributs
Étend le type de données de contact .
messages
| ID du type de données | hike.messages |
Les attributs
Étend le type de données du message .
Des postes
| ID du type de données | hike.posts |
Les attributs
Étend le type de données du message .
messages
| ID du type de données | wechat.messages |
Les attributs
Étend le type de données du message .
tinder
messages
| ID du type de données | tinder.messages |
Les attributs
Étend le type de données du message .
Ligne
messages
| ID du type de données | line.messages |
Les attributs
Étend le type de données du message .
Facebook Messenger
messages
| ID du type de données | facebook.messenger |
Les attributs
Étend le type de données du message .
Snapchat
messages
| ID du type de données | snapchat.messages |
Les attributs
Étend le type de données du message .
Histoires
| ID du type de données | snapchat.stories |
Les attributs
Étend le type de données du message .
Skype
messages
| ID du type de données | skype.messages |
Les attributs
Étend le type de données du message .