列举变更记录 - listChanges
功能介绍
列举变更记录
授权信息
当前API调用无需身份策略权限。
URI
POST /koodrive/ose/v1/syncDir/listChange
请求参数
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
Authorization | 是 | String | 该字段存储的是Access Token。调用KooDrive的API使用Token认证,拥有Token就代表拥有某种权限,在调用API的时候将Token加到请求消息头中,从而通过身份认证,获得操作API的权限。Access Token的获取请参考对应的开发手册,格式参考:Bearer+{access_token} |
X-User-Id | 是 | String | 用户id,用于app鉴权 |
X-Date | 是 | String | 日期,用于app鉴权 |
Host | 是 | String | 地址,用于app鉴权 |
X-Traceid | 否 | String | 消息日志跟踪标识(必须58位) |
参数 | 是否必选 | 参数类型 | 描述 |
|---|---|---|---|
container | 是 | String | 空间ID |
syncDirId | 是 | String | 同步盘ID |
deviceId | 是 | String | 设备ID |
cursor | 是 | String | 起始游标 |
pageSize | 是 | Integer | 每页显示数量 取值范围:[1, 100] 默认为10 |
响应参数
状态码:200
参数 | 参数类型 | 描述 |
|---|---|---|
fileChangeList | Array of FileChangeInfo objects | 文件变更记录列表 |
nextCursor | String | 分页查询的下一个cursor |
hasMore | Boolean | 是否还有更多变更信息 |
参数 | 参数类型 | 描述 |
|---|---|---|
policy | String | 云空间地址:固定值 aggregate 文件变更信息生成策略,目前仅支持:full、latest、aggregate。 full:表示该文件全量变更信息,多次变更会返回多条变更信息; latest:表示文件变更后的最新状态快照,多次变更仅返回最终文件状态信息; aggregate:表示按变更类型聚合后的变更信息,多次变更时按变更类型聚合后返回每一类变更信息; |
changeType | String | 变更类型 |
fileInfo | File object | 云空间文件元数据 |
deviceId | String | 发起变更操作的设备ID |
extInfo | FileChangeExtInfo object | 扩展信息 |
参数 | 参数类型 | 描述 |
|---|---|---|
category | String | 类型,drive#file |
id | String | 文件id |
fileName | String | 文件名,最长250个字符 |
fileType | String | 文件类型,外部输入 |
mimeType | String | 内容类型 |
description | String | 文件描述。字符串长度不超过512,不能包括emoji和非法字符 |
favorite | Boolean | 文件是否被收藏 |
recycled | Boolean | 文件是否被放入回收站 |
directlyRecycled | Boolean | 文件是否被直接被放入回收站(随着文件夹删除为false,直接删除为true) |
recyclingUser | User object | 删除用户 |
recycledTime | String | 放入回收站的时间 |
parentFolder | Array of strings | 父目录ID列表,注意:当前只取第一个父母Id |
properties | Map<String,String> | 文件公共自定义属性。key-value个数不能超过30个;单个key-value长度不超过124字符 |
appSettings | Map<String,String> | 应用自定义属性。key-value个数不能超过30个;单个key-value长度不超过124字符 |
containers | Array of strings | 空间标识 |
version | Integer | 版本号 |
createdTime | String | 文件创建时间 |
editedTime | String | 文件修改时间 |
editedByMeTime | String | 本人修改文件时间 |
editedByMe | Boolean | 是否是我修改文件 |
sharedWithMeTime | String | 共享给我的时间 |
sharer | User object | 分享者 |
owners | Array of User objects | 拥有者 |
lastEditor | User object | 最后编辑者 |
hasShared | Boolean | 是否共享 |
ownedByMe | Boolean | 是否是我上传 |
capabilities | Capabilities object | 能力 |
viewersHasCopyContentPermission | Boolean | 浏览者是否可以复制内容 |
writerHasCopyPermission | Boolean | 复制是否需要writer权限 |
writersHasSharePermission | Boolean | writer能否share |
originalFilename | String | 原始文件名,最长250个字符。不能包括'<>|:"*?/'和emoji,不能等于'..'、'.'、'' |
fullFileSuffix | String | 完整的文件后缀,取name第一个.后的字符串 |
fileSuffix | String | 文件后缀,fullFileExtension最后一个字符串 |
size | Integer | 文件大小 |
pictureMetadata | PictureMetadata object | 图片元数据 |
videoMetadata | VideoMetadata object | 视频元数据 |
audioMetadata | AudioMetadata object | 音频元数据 |
sha256 | String | 文件的sha256 |
lastHistoryVersionId | String | 最新的历史记录版本ID |
attachments | Array of Attachment objects | 附件(用途,附件),只有风控服务appid返回 |
iconDownloadLink | String | 图标链接 |
existThumbnail | Boolean | 是否有缩略图 |
privateKey | String | 特殊文件夹标识,使用规则如下: |
signedDownloadLink | String | FileProxy签名的下载链接,在线播放使用 |
downloadLinks | Array of DownloadLink objects | FileProxy文件列表下载地址 |
localPath | String | 变更时的父目录顶层id路径(取前10层),变更记录和文件查询接口返回 |
sortName | String | 转换fileName后的排序名称 |
userProperties | PrivateProperties object | 用户属性 |
参数 | 参数类型 | 描述 |
|---|---|---|
category | String | 类型,drive#user |
userId | String | 华为用户ID |
displayName | String | 用户显示名 |
me | Boolean | 是否是我 |
permissionId | String | 权限id |
参数 | 参数类型 | 描述 |
|---|---|---|
addChildNodePermission | Boolean | 是否可以增加子目录/文件 |
writerHasChangeCopyPermission | Boolean | change copy是否需要write权限 |
commentPermission | Boolean | 是否可以评论 |
copyPermission | Boolean | 是否可以复制 |
deletePermission | Boolean | 是否可以删除 |
downloadPermission | Boolean | 是否可以下载内容 |
editPermission | Boolean | 是否可以编辑 |
listChildNodePermission | Boolean | 是否可以list子目录/文件 |
editContentPermission | Boolean | 是否可以修改内容 |
readHistoryVersionPermission | Boolean | 是否可以读取副本 |
removeChildNodePermission | Boolean | 是否可以移动子目录 |
renameFilePermission | Boolean | 是否可以重命名 |
shareFilePermission | Boolean | 是否可以共享 |
recyclePermission | Boolean | 是否可以移动到回收站 |
unrecyclePermission | Boolean | 是否可以撤回移动子文件到回收站 |
参数 | 参数类型 | 描述 |
|---|---|---|
width | Integer | 照片宽度 |
height | Integer | 照片高度 |
rotation | Integer | 照片旋转角度,暂不提供 |
location | Location object | 定位信息 |
exifTime | String | 照片的时间,EXIF DateTime |
cameraMaker | String | 照相机制造商 |
cameraModel | String | 照相机型号 |
exposureTime | Float | 曝光长度,单位秒 |
aperture | Float | 光圈,f-number |
flashUsed | Boolean | 是否使用闪光灯 |
focalLength | Float | 焦距,毫米 |
isoSpeed | Integer | ISO速度 |
meteringMode | String | 测距模式 |
sensor | String | 感光类型 |
exposureMode | String | 曝光模式 |
colorSpace | String | 色彩空间 |
whiteBalance | String | 白平衡模式 |
exposureBias | Float | 曝光偏差,APEX值 |
maxApertureValue | Float | 最大光圈值,APEX value |
subjectDistance | Integer | 对象距离,单位米,暂不提供 |
lens | String | 镜头 |
参数 | 参数类型 | 描述 |
|---|---|---|
width | Integer | 宽度 |
height | Integer | 高度 |
durationTime | Integer | 时长,单位毫秒 |
position | String | 经纬度信息,格式为"x":"111","y":"222","z":"2222" |
rotation | Integer | 旋转角度,取值1-8 |
format | String | 视频编码格式,例如:H264、H265、vp8/vp9、ogg、mpeg-4 avc |
dynamicRange | String | SDR,HDR |
snapshotTime | String | 拍摄时间 |
参数 | 参数类型 | 描述 |
|---|---|---|
durationTime | Integer | 时长,单位毫秒 |
sampleRate | String | 采样率,例如:16000、48000 |
encoding | String | 音频编码格式,例如:pcm、aac、amr、amrwb |
codeRate | Number | 码率单位kb/s,例如:12.8 |
rateModel | String | 码率模式,例如:CBR |
languageCode | String | 语言国家码,例如:zh、en |
参数 | 参数类型 | 描述 |
|---|---|---|
usage | String | 用途默认:'content'-实体内容、'thumbnail'-缩略图,业务可以扩展该字段 |
assetId | String | Asset ID |
length | Long | 文件大小 |
versionId | String | Asset版本ID |
mimeType | String | MIME类型 |
hash | String | Asset关联的资源的hash |
sha256 | String | Asset关联的资源的sha256 |
createdTime | String | 数据创建时间 |
modifiedTime | String | 数据最后修改时间 |
attributes | Map<String,Object> | 类型属性 |
asset | Asset object | 资产 |
参数 | 参数类型 | 描述 |
|---|---|---|
id | String | Asset ID |
versionId | String | Asset版本ID |
version | Long | 版本号 |
mimeType | String | MIME type |
keepPolicy | Integer | 历史版本的保存策略 |
state | Integer | 数据的状态 |
createdTime | String | 数据创建时间 |
modifiedTime | String | 数据最后修改时间 |
lastModifyingUser | String | 最后一次修改的用户UPID |
resource | Resource object | 资源 |
cipher | Cipher object | 密码器 |
attributes | Map<String,Object> | 类型属性(Key部分使用字母开头的字母加数字组合,Value部分禁止使用emoji字符,不限单个属性长度,限制总大小为16K以内),存在字段如下: |
properties | Map<String,String> | 扩展属性 |
参数 | 参数类型 | 描述 |
|---|---|---|
id | String | 文件资源ID |
hash | String | 文件资源的hash |
length | Long | 文件资源的长度 |
sha256 | String | 文件的sha256(用于完整性校验) |
type | Integer | 资源类型 |
state | Integer | 数据的状态 |
sliceSize | Long | 分片大小 |
hfek | String | 加密文件的fek的hash,用于type={0} |
iv | String | 加密文件的IV,适用于type={0} |
createdTime | String | 数据创建时间 |
modifiedTime | String | 数据最后修改时间 |
objects | Array of SliceObject objects | 分片对象,适用于type={0,3} |
attributes | Map<String,Object> | 类型属性 |
properties | Map<String,String> | 扩展属性 |
参数 | 参数类型 | 描述 |
|---|---|---|
id | String | 分片ID |
number | Integer | 分片序号,从0开始计,不适用于type={12} |
start | Long | 分片的起始位置,不适用于type={12} |
sha256 | String | 分片的sha256(如果是加密,是指密文的sha256) |
length | Long | 分片的长度(如果是加密,则是密文长度) |
bucket | String | OBS桶信息 |
createdTime | String | 数据创建时间 |
modifiedTime | String | 数据最后修改时间 |
uploadUrl | EndpointURL object | 上传url |
downloadUrl | EndpointURL object | 下载url |
uploadId | String | 分段上传ID,适用于type={12}且uploadMode=multipart |
attributes | Map<String,Object> | 类型属性 |
properties | Map<String,String> | 扩展属性 |
images | Array of Images objects | 缩略图 |
参数 | 参数类型 | 描述 |
|---|---|---|
url | String | URL |
method | String | http method |
headers | Map<String,String> | http headers |
forms | Map<String,String> | 表单参数,适用于type={12}且uploadMode=post |
partId | String | 分段参数,适用于type={12}且uploadMode=multipart |
参数 | 参数类型 | 描述 |
|---|---|---|
algorithm | String | 加密算法 |
hfek | String | 加密文件的fek的hash,用于type={0,4} |
iv | String | 加密文件的IV,适用于type={0,4} |
dataType | Integer | 数据类型 |
keychains | Array of Keychain objects | 钥匙串 |
参数 | 参数类型 | 描述 |
|---|---|---|
usage | String | 用途默认:'content'-实体内容、'thumbnail'-缩略图,业务可以扩展该字段 |
downloadLink | String | 附件下载地址 |
version | Integer | 附件版本号 |
请求示例
列举变更记录示例
POST /koodrive/ose/v1/syncDir/listChange
{
"container" : "K*****",
"syncDirId" : "K*****",
"deviceId" : "K*****",
"cursor" : "0",
"pageSize" : "10"
} 响应示例
状态码:200
列举变更记录响应
{
"fileChangeList" : [ {
"policy" : "full",
"changeType" : "add",
"fileInfo" : {
"id" : "FmZxJyIQz5B1DtzgjM4FCuI94CpzrMZMd",
"fileName" : "test.txt",
"favorite" : false,
"mimeType" : "text/plain",
"fileSuffix" : "txt",
"recycled" : false,
"hidden" : false,
"size" : 4,
"directlyRecycled" : false,
"parentFolder" : [ "FhrBCdI6kLcSzy5hGs7FPGZBUASDhplrE" ],
"containers" : [ "IAAE0gxbkQ1RvAncA1649517393090925824" ],
"properties" : {
"localCreatedAt" : "",
"localUpdatedAt" : ""
},
"sha256" : "9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08",
"attachments" : [ {
"assetId" : "1765316142659898496",
"versionId" : "1765316142659898497",
"attributes" : {
"fileName" : "test.txt",
"localCreatedAt" : "",
"createdBy" : "c937ff95eeb44494a5a967e21d1852ae",
"resource" : {
"id" : "1762995278538867328",
"object" : {
"bucket" : "obs-koodrive-test-2",
"objectId" : "2c9c760947e3454c8693a1718b5c2081086"
}
},
"localUpdatedAt" : ""
},
"hash" : "9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08",
"length" : 4,
"mimeType" : "text/plain",
"usage" : "content",
"sha256" : "9f86d081884c7d659a2feaa0c55ad015a3bf4f1b2b0b822cd15d6c15b0f00a08",
"createdTime" : "2025-09-01T08:08:03.357Z",
"modifiedTime" : "2025-09-01T08:08:03.357Z"
} ],
"owners" : [ {
"category" : "drive#user",
"me" : true,
"permissionId" : "1649517393443190528",
"userId" : "YzkzN2ZmOTVlZWI0NDQ5NGE1YTk2N2UyMWQxODUyYWUtMTY0OTUxNzI5MTIwMjg5MzA1Nw"
} ],
"lastEditor" : {
"category" : "drive#user",
"me" : true,
"permissionId" : "1649517393443190528",
"userId" : "YzkzN2ZmOTVlZWI0NDQ5NGE1YTk2N2UyMWQxODUyYWUtMTY0OTUxNzI5MTIwMjg5MzA1Nw"
},
"fileType" : "26",
"createdTime" : "2025-09-01T08:08:03.092Z",
"editedTime" : "2025-09-01T08:08:03.847Z",
"userProperties" : {
"properties" : {
"hidden" : "false"
}
},
"creatingUser" : "YzkzN2ZmOTVlZWI0NDQ5NGE1YTk2N2UyMWQxODUyYWUtMTY0OTUxNzI5MTIwMjg5MzA1Nw"
},
"extInfo" : {
"idPath" : "FmZxJyIQz5B1DtzgjM4FCuI94CpzrMZMd"
}
} ],
"hasMore" : false,
"code" : 0,
"msg" : "成功"
} 状态码
状态码 | 描述 |
|---|---|
200 | 列举变更记录响应 |

