Skip to content

Read the change feed since the client's cursors

POST
/api/v1/drive/changes
curl --request POST \
--url https://app.avera.io/api/v1/drive/changes \
--header 'Content-Type: application/json' \
--header 'X-Avera-Drive-Contract: 1' \
--data '{ "cursors": { "additionalProperty": 1 } }'

Each cursor is a seq, a position on the project timeline. The feed answers each named tree as the difference between its projection at that cursor and its projection now, so a rename, a re-filing and a deletion are all one mechanism. A delete arrives as an explicit tombstone, never inferred from absence on the client. The returned cursor is the head seq the answer was computed at; a cursor above the head means the client is from another timeline and must resync, and a tree the caller can no longer see is reported gone.

X-Avera-Drive-Contract
required
integer format: int32
X-Avera-Drive-Naming
string
Media typeapplication/json
object
cursors
required
object
key
additional properties
integer format: int64

Example generated

{
"cursors": {
"additionalProperty": 1
}
}

OK

Media type*/*
object
changes
required
Array<object>
object
tree
required
string
node
required
object
id
required
string
parentId
string | null
name
required
string
kind
required
string
size
integer | null format: int64
modifiedAt
required
string format: date-time
seq
required
integer format: int64
contentVersion
string | null
state
string | null
status
string | null
number
string | null
typeName
string | null
stateName
string | null
icon
string | null
color
string | null
webUrl
string | null
capabilities
required
object
read
required
boolean
write
required
boolean
addChildren
required
boolean
readReason
string | null
writeReason
string | null
addChildrenReason
string | null
deleted
required
boolean
cursors
required
object
key
additional properties
integer format: int64
moreComing
required
boolean
resync
required
Array<string>
gone
required
Array<string>