데이터 유형

API에 대한 data
유형 폴링에 대해 리턴 된 결과는 아래에 설명 된 형식 중 하나의 형식으로 정보를 리턴합니다.
결과 페이로드
속성
데이터 JSON 페이로드의 루트 구조에는 다음과 같은 속성이 있습니다.
이름 | 유형 | 설명 |
---|---|---|
data | 데이터 개체 목록 | 소스에서 검색된 데이터입니다. |
metadata | 메타데이터 개체 | 데이터와 관련된 메타 data . |
메타 데이터
속성
이름 | 유형 | 설명 |
---|---|---|
count | 정수 | data 의 개체 수입니다. |
파일
API를 통해 files
유형 폴링을 통해 다운로드 할 수있는 파일에 대한 참조이므로 file
데이터 유형은 API 전체에서 볼 수 있습니다.
속성
이름 | 유형 | 설명 |
---|---|---|
id | 끈 | API에서 파일을 요청하는 데 사용되는 식별자입니다. 값은 현재 소스 범위 내에서만 고유함을 보장합니다. |
data_type | 문자열, 항상 file | 데이터 유형 지정자. |
name | 끈 | 확장자를 제외한 파일 이름입니다. |
extension | 문자열, 선택 사항 | 가능한 경우 파일의 확장자입니다. |
mime_type | 문자열, 선택사항 | 사용 가능한 경우 파일의 MIME 유형입니다. |
size | 정수, 선택 사항 | 사용 가능한 경우 파일의 크기입니다. |
checksum | 문자열, 선택사항 | 사용 가능한 경우 md5 체크섬입니다. |
예
{ "id": "abc123", "data_type": "file", "name": "IMG_0003", "extension": "jpg", "mime_type": "image/jpeg", "size": 2505426, }
영상
이름 | 유형 | 설명 |
---|---|---|
filename | 끈 | 파일의 원래 파일 이름입니다. 이 파일 이름의 확장자는 파일의 확장자와 일치해야 합니다. |
filepath | 끈 | 해당 서비스 내의 다른 파일에 상대적인 파일 경로입니다. 예를 들어 백업 내의 경로입니다. |
width | 정수, 선택 사항 | 사용 가능한 경우 파일의 너비입니다. |
height | 정수, 선택 사항 | 가능한 경우 파일의 높이입니다. |
예
{ "id": "abc123", "data_type": "image", "filename": "IMG_0003.JPG", "filepath": "Media/DCIM/100APPLE/IMG_0003.JPG", "name": "IMG_0003", "extension": "jpg", "mime_type": "image/jpeg", "width": 3000, "height": 2002, "size": 2505426, }
비디오
이름 | 유형 | 설명 |
---|---|---|
filename | 끈 | 파일의 원래 파일 이름입니다. 이 파일 이름의 확장자는 파일의 확장자와 일치해야 합니다. |
filepath | 끈 | 해당 서비스 내의 다른 파일에 상대적인 파일 경로입니다. 예를 들어 백업 내의 경로입니다. |
width | 정수, 선택 사항 | 사용 가능한 경우 파일의 너비입니다. |
height | 정수, 선택 사항 | 가능한 경우 파일의 높이입니다. |
duration | 정수, 선택 사항 | 가능한 경우 동영상의 길이입니다. |
예
{ "id": "abc123", "data_type": "video", "filename": "IMG_0009.MOV", "filepath": "Media/DCIM/100APPLE/IMG_0009.MOV", "name": "IMG_0009", "extension": "mov", "mime_type": "video/quicktime", "width": 1920, "height": 1080, "size": 5421796, "duration": 9.135623 }
메시지
속성
이름 | 유형 | 설명 |
---|---|---|
id | 끈 | 메시지의 고유 식별자입니다. 필요한 경우 반환된 데이터를 중복 제거하는 데 사용합니다. |
data_type | 문자열, 항상 message | 데이터 유형 지정자. |
type | 문자열, 선택 사항 | 메시징 서비스가 다양한 메시지 유형을 처리할 때 사용됩니다. 예를 들어 iOS 메시지의 경우 SMS 및 iMessage 입니다. |
handle | 끈 | 대화의 두 번째 파티. |
contact | 중첩된 연락처, 선택 사항 | 대화의 두 번째 당사자의 iOS 연락처를 참조하는 개체입니다. |
conversation_id | 끈 | 대화별로 메시지를 그룹화하는 식별자입니다. |
from_me | 부울 | 메시지를 보냈는지 받았는지 여부입니다. |
user | 문자열, 선택 사항 | 여러 사용자/계정이 기기에서 메시징 앱을 사용 중인 경우 메시징 앱 사용자. |
text | 끈 | 메시지의 본문입니다. |
attachments | 파일 목록, 선택 사항 | download_file 메서드와 함께 사용할 수 있는 file_id 값의 배열입니다. 메시지에 첨부 파일이 없으면 빈 배열이 반환됩니다. |
group | 문자열, 선택 사항 | 메시지가 전송된 시점의 그룹 이름입니다. |
group_id | 문자열, 선택 사항 | 해당 앱의 컨텍스트 내에서 그룹의 고유 식별자입니다. 정수가 아닐 수 있으며, 존재하는 경우 conversation_id 외에 정보만 제공합니다. |
group_handles | 문자열 목록, 선택 사항 | 이 값은 개인 간 메시지의 경우 null 이며 그룹 대화에서는 전화번호 또는 iMessage 이메일 주소를 나타내는 문자열 배열입니다. |
group_contacts | 문자열, 선택 사항 | 그룹의 iOS 연락처를 참조하는 개체 배열입니다. |
deleted | 부울, 선택 사항 | 메시지가 삭제되었는지 여부를 나타내는 부울 값입니다. |
date | 날짜 시간 | 메시지를 보내거나 받은 시간입니다. |
date_edited | 날짜 시간, 선택 사항 | 해당되는 경우 메시지가 마지막으로 편집된 시간입니다. |
date_deleted | 날짜 시간, 선택 사항 | 메시지가 삭제된 경우(해당되는 경우). |
예
{ "id": "a1b2c3d4", "data_type": "message", "type": "SMS", "handle": "vodafone", "conversation_id": "w6x7y8z9", "from_me": false, "text": "Hi from Vodafone!", "attachments": [], "group_handles": [ "+441234567890", "renate@reincubate.com" ], "deleted": false, "date": "2020-01-01T00:00:00.000000Z" }
메시지 핸들 및 대화
API의 데이터 추출기는 역사적으로 광범위한 소스 데이터를 지원하며 시간이 지남에 따라 앱 및 iOS 업데이트를 통해 조각난 데이터를 재정렬하려고 시도합니다. 메시징 앱이 새로운 기능을 추가함에 따라 기본 데이터가 새 구조로 완벽하게 마이그레이션되도록 항상 주의를 기울이지는 않습니다. 따라서 API는 일관된 데이터를 반환하기 위해 특정 정보를 추론해야 합니다.
이러한 사례 중 하나는 메시징 앱, 특히 ios_messages.messages
데이터 모듈에서 반환된 핸들 및 대화 정보에 대한 것입니다. API는 해당 정보가 존재하거나 추론할 수 있는 경우 숫자 식별자로 conversation_id
를 채우거나, 제2자의 핸들을 사용하여 conversation_id
를 설정하도록 대체합니다. 따라서 이 필드를 사용하여 동일한 채팅의 메시지를 함께 묶는 것이 좋습니다.
수정 및 삭제된 메시지
Information on edited and deleted messages is available for ios_messages.messages
for backups made from devices running iOS 16 and later. For edited messages, this is currently limited to returning the final text of the message and the time at which the edit occurred. For deleted messages, information is only expected to be available while the message is still recoverable at the point the backup was made, which Apple say is 30–40 days after deletion.
대화
대화 스레드.
이름 | 유형 | 설명 |
---|---|---|
id | 끈 | 항목 ID. |
data_type | 문자열, 항상 conversation | 항목 데이터 유형 ID. |
group | 선택적 문자열 | 그룹의 이름입니다. |
members | contact 목록 | 대화 참가자. |
접촉
contact
속성
이름 | 유형 | 설명 |
---|---|---|
id | 끈 | 항목 ID. |
data_type | 문자열, 항상 contact | 항목 데이터 유형 ID. |
name | 선택적 문자열 | 연락처의 전체 이름입니다. |
first_name | 선택적 문자열 | 연락처의 이름입니다. |
middle_name | 선택적 문자열 | 연락처의 중간 이름입니다. |
last_name | 선택적 문자열 | 연락처의 성입니다. |
prefix | 선택적 문자열 | 연락처의 이름 접두사입니다. |
suffix | 선택적 문자열 | 연락처의 이름 접미사입니다. |
nickname | 선택적 문자열 | 연락처의 닉네임입니다. |
records | contact.record 항목 목록 | 연락처와 연결된 연락처 레코드입니다. |
organisation | 선택적 문자열 | 연락처의 조직 이름입니다. |
department | 선택적 문자열 | 조직 내 연락처의 부서입니다. |
jobtitle | 선택적 문자열 | 조직 내 연락처의 직책입니다. |
birthday | 선택적 날짜 | 연락처의 생일입니다. |
contact.record
속성
연락처 레코드 항목에는 Phone
, Email
, URL
, Social
및 Address
5 가지 유형이 있습니다. 전화 번호, 이메일 주소, 웹 사이트 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 | 끈 | 항목 ID. |
data_type | 문자열, 항상 call | 항목 데이터 유형 ID. |
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 | 끈 | 항목 ID. |
data_type | 문자열, 항상 event | 항목 데이터 유형 ID. |
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 | 선택적 문자열 | end_date 의 timeone입니다. |
all_day | 부울 | 이벤트가 하루 종일 지속되는지 여부. |
travel_time | 선택적 기간 | 이벤트의 이동 시간 기간입니다. |
recurrence | 선택적 중첩 event.recurrence | 이벤트의 반복 설정입니다. |
location | 선택적 문자열 | 이벤트가 진행되는 곳입니다. |
start_location | 선택적 문자열 | 이벤트가 시작되는 곳. |
attendees | 선택적 문자열 목록 | 이벤트 참석자의 이름. |
attached_url | 선택적 문자열 | 이벤트와 연결된 URL입니다. |
creation_date | 선택적 날짜/시간 | 이벤트가 생성된 시간입니다. 공휴일과 같은 기본 캘린더 항목인 경우 설정되지 않습니다. |
event.recurrence
속성
이름 | 유형 | 설명 |
---|---|---|
interval | 정수 | repeat 할 반복 횟수, 즉 1년마다(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 | 항목 데이터 유형 ID. |
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 쿠키.
속성
이름 | 유형 | 설명 |
---|---|---|
data_type | 문자열, 항상 cookie | 항목 데이터 유형 ID. |
name | 끈 | 쿠키의 이름입니다. |
value | 끈 | 쿠키의 값입니다. |
domain | 끈 | 쿠키의 도메인 지정자입니다. |
path | 끈 | 쿠키의 경로 지정자입니다. |
flags | 끈 | 쿠키에 설정된 모든 플래그입니다. |
creation_date | 날짜 시간 | 쿠키가 생성된 시기입니다. |
expiry_date | 날짜 시간 | 쿠키가 만료될 때. |
{ "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" }