Типы данных

обновленный
Cover image for: Типы данных

Результаты, data для опросов типов data по API, будут возвращать информацию в одном из форматов, описанных ниже.

Результат полезной нагрузки

Атрибуты

Корневая структура данных JSON имеет следующие атрибуты.

название тип описание
data список объектов данных Данные получены из источника.
metadata объект метаданных Метаданные, связанные с data .

Метаданные

Атрибуты

название тип описание
count инт Количество объектов в data .

файл

Тип данных file виден во всем API, так как это ссылка на файл, который можно загрузить из API посредством опроса типа files .

Атрибуты

название тип описание
file_id нить Идентификатор, используемый для запроса файла из API. Значение гарантированно будет уникальным только в пределах текущего источника.
type строка, всегда file Спецификатор типа данных.
name нить Имя файла без расширения.
extension строка, необязательно Расширение файла, если доступно.
mime_type строка, необязательно MIME-тип файла, если он доступен.
size интервал, необязательный Размер файла, если он доступен.
checksum строка, необязательно Контрольная сумма md5, если она доступна.

пример

{
  "file_id": "abc123",
  "type": "file",
  "name": "IMG_0003",
  "extension": "jpg",
  "mime_type": "image/jpeg",
  "size": 2505426,
}

Образ

Расширяет файл .

название тип описание
file_id нить Идентификатор, используемый для запроса файла из API. Значение гарантированно будет уникальным только в пределах текущего источника.
type нить Всегда image .
filename нить Оригинальное имя файла. Расширение в этом имени файла должно соответствовать расширению файла.
file_path нить Путь к файлу относительно других файлов в его службе. Например, путь внутри резервной копии.
width интервал, необязательный Ширина файла, если она доступна.
height интервал, необязательный Высота файла, если она доступна.

пример

{
  "file_id": "abc123",
  "type": "image",
  "filename": "IMG_0003.JPG",
  "file_path": "Media/DCIM/100APPLE/IMG_0003.JPG",
  "name": "IMG_0003",
  "extension": "jpg",
  "mime_type": "image/jpeg",
  "width": 3000,
  "height": 2002,
  "size": 2505426,
}

видео

Расширяет файл .

название тип описание
file_id нить Идентификатор, используемый для запроса файла из API. Значение гарантированно будет уникальным только в пределах текущего источника.
type нить Всегда video .
filename нить Оригинальное имя файла. Расширение в этом имени файла должно соответствовать расширению файла.
file_path нить Путь к файлу относительно других файлов в его службе. Например, путь внутри резервной копии.
width интервал, необязательный Ширина файла, если она доступна.
height интервал, необязательный Высота файла, если она доступна.
duration интервал, необязательный Продолжительность видео, если доступно.

пример

{
  "file_id": "abc123",
  "type": "video",
  "filename": "IMG_0009.MOV",
  "file_path": "Media/DCIM/100APPLE/IMG_0009.MOV",
  "name": "IMG_0009",
  "extension": "mov",
  "mime_type": "video/quicktime",
  "width": 1920,
  "height": 1080,
  "size": 5421796,
  "duration": 9.135623
}

видео

Расширяет файл .

название тип описание
file_id нить Идентификатор, используемый для запроса файла из API. Значение гарантированно будет уникальным только в пределах текущего источника.
type нить Всегда audio .
filename нить Оригинальное имя файла. Расширение в этом имени файла должно соответствовать расширению файла.
file_path нить Путь к файлу относительно других файлов в его службе. Например, путь внутри резервной копии.
transcription строка, необязательно Текстовая транскрипция аудиосообщения, если таковая имеется.

пример

{
  "id": "abc123",
  "type": "audio",
  "filename": "Audio Message.caf",
  "file_path": "Library/SMS/Attachments/.../Audio Message.caf",
  "transcription": "Test voice message",
}

Аудио транскрипции

Транскрипция аудиосообщений, если она доступна в данных резервной копии, возвращается как часть audio . Это доступно для аудиосообщений, созданных в сообщениях iOS, начиная с iOS 17.

Сообщение

Атрибуты

название тип описание
id нить Уникальный идентификатор сообщения. Используйте это для дедупликации возвращаемых данных, если это необходимо.
data_type строка, всегда message Спецификатор типа данных.
type строка, необязательно Используется, когда служба обмена сообщениями обрабатывает различные типы сообщений. Например, SMS и iMessage в случае сообщений iOS.
handle нить Вторая сторона разговора, часто уникальный идентификатор приложения для обмена сообщениями.
handle_name строка, необязательно Если возможно, отображаемое имя дескриптора.
contact вложенный контакт, необязательный Объект, ссылающийся на контакт iOS второй стороны разговора.
conversation_id нить Идентификатор группировки сообщений по разговору.
from_me логический Было ли сообщение отправлено или получено.
user строка, необязательно Пользователь приложения для обмена сообщениями в случае, когда несколько пользователей/учетных записей могут использовать приложение для обмена сообщениями с устройства.
text нить Тело сообщения.
edits список правок, по желанию Список изменений содержимого сообщений для приложений, в которых редактирование сообщений поддерживается, а история сохраняется в резервных копиях.
attachments список файлов, необязательный Массив значений file_id , которые можно использовать с методом download_file . Если сообщение не содержит вложения, возвращается пустой массив.
group строка, необязательно Название группы на момент отправки сообщения .
group_id строка, необязательно Уникальный идентификатор группы в контексте этого приложения. Это может быть не целое число, и, если оно присутствует, предоставляет только информацию в дополнение к conversation_id .
group_handles список строк, необязательный Это значение равно null для сообщений от человека к человеку, а в групповых беседах представляет собой массив строк, представляющих номера телефонов или адреса электронной почты iMessage.
group_contacts строка, необязательно Массив объектов, ссылающихся на контакты iOS в группе.
deleted логический, необязательный Логическое значение, указывающее, было ли сообщение удалено.
marked_unread логическое значение, необязательно Пометил ли пользователь сообщение как непрочитанное, если оно доступно.
date дата и время Когда сообщение было отправлено или получено.
date_read дата-время, необязательно Когда сообщение было впервые прочитано, если доступно.
date_edited дата/время, необязательно Когда сообщение редактировалось в последний раз, если применимо.
date_deleted дата/время, необязательно Когда сообщение было удалено, если применимо.

пример

{
  "id": "a1b2c3d4",
  "data_type": "message",
  "type": "SMS",
  "handle": "reincubate",
  "handle_name": "Reincubate",
  "conversation_id": "w6x7y8z9",
  "from_me": false,
  "text": "Hi from London!",
  "edits": [{
    "text": "Hi!",
    "date": "2023-06-27T10:20:00.000000Z"
  }, {
    "text": "Hi from London!",
    "date": "2023-06-27T10:21:00.000000Z"
  }],
  "attachments": [],
  "group_handles": [
    "+441234567890",
    "renate@reincubate.com"
  ],
  "deleted": false,
  "date": "2023-06-27T10:20:00.000000Z",
  "date_edited": "2023-06-27T10:21:00.000000Z"
}

Дескрипторы сообщений и разговоры

Извлекатели данных API поддерживают исторически широкий диапазон исходных данных и будут пытаться перестроить данные, которые со временем стали фрагментированы из-за обновлений приложений и iOS. Поскольку приложения для обмена сообщениями добавляют новые функции, они не всегда заботятся о том, чтобы базовые данные были идеально перенесены в новую структуру. Поэтому API должен выводить определенную информацию, чтобы возвращать согласованные данные.

Один из таких случаев относится к дескрипторам и информации о беседе, возвращаемой из приложений для обмена сообщениями, и, в частности, из модуля данных ios_messages.messages . API заполнит conversation_id либо числовым идентификатором, если такая информация существует или может быть выведена, либо откатом, чтобы использовать дескриптор стороннего поставщика для установки conversation_id . Поэтому рекомендуется использовать это поле для связывания сообщений из одного чата.

Отредактированные и удаленные сообщения

Информация об отредактированных и удаленных сообщениях доступна для ios_messages.messages для резервных копий, сделанных с устройств под управлением iOS 16 и более поздних версий. Ожидается, что информация об удаленных сообщениях будет доступна только тогда, когда сообщение еще можно восстановить на момент создания резервной копии, что, по словам Apple, происходит через 30–40 дней после удаления .

Для отредактированных сообщений история изменений возвращается в атрибуте edits . Каждое редактирование включает состояние text и время, когда редактирование было зафиксировано. text атрибут самого сообщения всегда будет таким же, как и у окончательного редактирования.

разговор

Поток беседы.

название тип описание
id нить Идентификатор элемента.
data_type строка, всегда conversation Идентификатор типа данных элемента.
group необязательная строка Название группы.
members список contact Участники беседы.

контакт

атрибуты contact

название тип описание
id нить Идентификатор элемента.
data_type строка, всегда contact Идентификатор типа данных элемента.
name необязательная строка Полное имя контакта.
first_name необязательная строка Имя контакта.
middle_name необязательная строка Отчество контакта.
last_name необязательная строка Фамилия контакта.
prefix необязательная строка Префикс имени контакта.
suffix необязательная строка Суффикс имени контакта.
nickname необязательная строка Никнейм контакта.
records список элементов contact.record Записи контактов, связанные с контактом.
organisation необязательная строка Название организации контакта.
department необязательная строка Отдел контактного лица в организации.
jobtitle необязательная строка Должность контактного лица в организации.
birthday необязательная дата День рождения контакта.

атрибут contact.record

Существует 5 типов записей записей контактов: Phone , Email , URL , Social Address и Address . Они соответствуют номеру телефона, адресу электронной почты, URL-адресу веб-сайта, идентификатору учетной записи в социальной сети и почтовому адресу соответственно.

Первые 4 имеют одинаковые атрибуты:

название тип описание
type нить Один из: Phone , Email , URL , Social сети .
name необязательная строка Метка, связанная с записью.
value нить Значение записи.

Тип записи контакта « Address » имеет дополнительные поля адреса:

название тип описание
type строка, всегда Address Запись номера телефона.
name необязательная строка Метка, связанная с номером.
CountryCode необязательная строка Код страны.
Country необязательная строка Название страны.
ZIP необязательная строка Почтовый индекс.
State необязательная строка Название штата или аббревиатура.
City необязательная строка Название города.
Municipality необязательная строка Название муниципалитета.
SubLocality необязательная строка Название района или района.
Street необязательная строка Имя адреса улицы.

Образец данных

{
  "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"
}

Вызов

Атрибуты

название тип описание
id нить Идентификатор элемента.
data_type строка, всегда call Идентификатор типа данных элемента.
call_type нить Один из: Phone , FaceTime Video FaceTime Audio .
address нить Цель вызова. Это может быть номер телефона, Apple ID или другой идентификатор.
duration плавать Продолжительность вызова.
answered логический Был ли ответ на звонок.
from_me логический Был ли звонок исходящим или входящим.
date дата и время Когда был сделан звонок.

Образец данных

{
  "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"
}

Событие

атрибуты event

название тип описание
id нить Идентификатор элемента.
data_type строка, всегда event Идентификатор типа данных элемента.
unique_identifier необязательная строка UID элемента для дедупликации в нескольких источниках данных о событиях.
calendar необязательная строка Название календаря.
calendar_uid необязательная строка UID календаря.
calendar_store необязательная строка Тип хранилища календаря, т. е. iCloud , по Default .
summary необязательная строка Краткое описание или название события.
description необязательная строка Описание события.
start_date необязательная дата и время Когда событие начнется.
end_date необязательная дата и время Когда событие закончится.
start_time_zone необязательная строка Часовой пояс start_date .
end_time_zone необязательная строка Timeone из end_date .
all_day логический Продлится ли мероприятие целый день.
travel_time необязательная продолжительность Продолжительность события в пути.
recurrence необязательный вложенный event.recurrence Настройки повторения события.
location необязательная строка Где происходит событие.
start_location необязательная строка Откуда начинается событие.
attendees необязательный список строк Имена участников мероприятия.
attached_url необязательная строка URL-адрес, связанный с событием.
creation_date необязательная дата и время Когда событие было создано. Не задано, если запись календаря по умолчанию, например, праздничные дни.

атрибуты event.recurrence

название тип описание
interval целое число Количество repeat для повторения, т.е. 1 Yearly (раз в 1 год).
repeat нить Один из: OneTime , Daily , Weekly , Monthly , Yearly .
repeat_end_date необязательная дата и время Когда перестать повторяться.

Образец данных

{
  "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
}

Запись

{
  "title": "Monday meeting:",
  "note": "Monday meeting:\n Discuss X,\n discuss Y.",
  "summary": null,
  "folder": "icloud",
  "sub_folder": "work",
  "attachments": [
    {
      "type": "image",
      "file_id": "8e22cf6e524357b4eb3da775d193072ebba9543f",
      "file_path": "Media/80DDDEAD-B33F-37B2-7219432C0359/Image.jpeg"
    }
  ],
  "creation_date": "2016-06-06 13:23:20.000000",
  "last_modified": "2016-06-07 15:21:25.000000"
}

Посещение

Запись о посещении веб-сайта.

Атрибуты

название тип описание
data_type строка, всегда visit Идентификатор типа данных элемента.
url нить URL посещенной страницы.
title нить Заголовок посещенной страницы.
date_created дата и время Когда визит состоялся.
{
  "data_type": "visit",
  "url": "https://reincubate.com/",
  "title": "Reincubate: the app data company",
  "date_created": "2020-01-01T00:00:00.000000Z"
}

печенье

HTTP-cookie.

Атрибуты

название тип описание
data_type строка, всегда cookie Идентификатор типа данных элемента.
name нить Имя файла cookie.
value нить Значение файла cookie.
domain нить Спецификатор домена файла cookie.
path нить Спецификатор пути файла cookie.
flags нить Любые флаги, установленные для файла cookie.
creation_date дата и время Когда файл cookie был создан.
expiry_date дата и время Когда срок действия файла cookie истекает.
{
  "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"
}

Расположение

Атрибуты данных

название тип описание
data_type строка, всегда location Идентификатор типа данных.
latitude плавать Координата широты местоположения.
longitude плавать Координата долготы местоположения.
altitude плавать Координата высоты местоположения.
horizontal_accuracy плавать Горизонтальная точность измерения.
vertical_accuracy плавать Вертикальная точность измерения.
position_type нить Идентификатор используемого метода измерения.
date_created дата и время Когда было произведено измерение.

Образец данных

{
  "data_type": "location",
  "latitude": 51.507452392689146,
  "longitude": -0.07398372304584414,
  "altitude": 0.0,
  "horizontal_accuracy": 65.0,
  "vertical_accuracy": 0.0,
  "positioning_type": "Wifi",
  "date_created": "2020-01-01T00:00:00.000000Z"
}

Как мы можем помочь?

Наша служба поддержки здесь, чтобы помочь!

Наш офис работает с понедельника по пятницу с 9:00 до 17:00 по Гринвичу. Время в настоящее время 10:08 ПП с GMT.

Мы стремимся отвечать на все сообщения в течение одного рабочего дня.

Наша отличная команда поддержки

© 2008 - 2024 Reincubate Ltd. Все права защищены. Зарегистрировано в Англии и Уэльсе #5189175, VAT GB151788978. Reincubate® и Camo® являются зарегистрированными товарными знаками. Политика конфиденциальности & условия.