Skip to content

Versions_CompareVersions

GET
/v1/accounts/{account}/datasets/{dataset}/versions:compare
curl --request GET \
--url https://dev-api.qualiastudios.dev/v1/accounts/example/datasets/example/versions:compare \
--header 'X-API-Key: <X-API-Key>'

What came in, went out or changed revision between two refs of one dataset, and why (QUA-1836). Paged over the changed episodes.

account
required
string

The account id.

dataset
required
string

The dataset id.

base
string

The ref measured from: a tag, stable or a digest prefix. Empty means the newest tag (everything is new when there is none).

target
string

The ref measured to; empty means head.

pageSize
integer format: int32

At most this many changed episodes; 0 means 100, the maximum is 1000.

pageToken
string

From a previous response’s next_page_token.

OK

Media type application/json

Response for Versions.CompareVersions.

object
changes

One page of changed episodes.

Array<object>

One episode that came in or went out.

object
episode

Accounts/{account}/datasets/{dataset}/episodes/{episode}, in this dataset’s scope.

string
direction

Added or removed.

string format: enum
Allowed values: DIRECTION_UNSPECIFIED ADDED REMOVED CHANGED
reason

Why.

string format: enum
Allowed values: REASON_UNSPECIFIED RULING UPSTREAM_RULING SOURCE_CHANGED SOURCE_MOVED ARRIVED SPLIT EDITED
source

The source it came through (mixtures).

string
cut

Present on immutable cut pieces. Identifies their original take and their order within its cut, so replacements can be paired across this flat direction/episode-ordered list (and across pages). The take uses this comparison’s dataset scope, just as episode does.

object
take

Accounts/{account}/datasets/{dataset}/episodes/{episode}: the take it was cut from.

string
takeIndex

The take’s index in its upload (Episode.index of the take).

integer format: int32
piece

Its place among the take’s pieces, from 1.

integer format: int32
pieceCount

How many pieces the take was cut into.

integer format: int32
startSeconds

Where it starts, in seconds of the take’s recording.

number format: double
endSeconds

Where it ends, in seconds of the take’s recording.

number format: double
nextPageToken

Empty on the last page.

string
baseVersion

The resolved base (“1.0”, or empty when there was none).

string
baseDigest

Digest of the base.

string
targetDigest

Digest of the target.

string
addedCount

Episodes added, across every page.

string
removedCount

Episodes removed, across every page.

string
changedCount

Episodes in both at a different revision, across every page.

string
reasonCounts

Added, removed and changed counted per reason, “RULING” -> n, for the dialog’s summary.

object
key
additional properties
string
draftNote

A note drafted from the diff, for the tag dialog to pre-fill.

string
suggestedVersion

The tag name the dialog offers: the next minor (“1.0” first). Majors are a person’s call.

string
Example
{
"changes": [
{
"direction": "DIRECTION_UNSPECIFIED",
"reason": "REASON_UNSPECIFIED"
}
]
}

Default error response

Media type application/json

The Status type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by gRPC. Each Status message contains three pieces of data: error code, error message, and error details. You can find out more about this error model and how to work with it in the API Design Guide.

object
code

The status code, which should be an enum value of [google.rpc.Code][google.rpc.Code].

integer format: int32
message

A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the [google.rpc.Status.details][google.rpc.Status.details] field, or localized by the client.

string
details

A list of messages that carry the error details. There is a common set of message types for APIs to use.

Array<object>

Contains an arbitrary serialized message along with a @type that describes the type of the serialized message.

object
@type

The type of the serialized message.

string
key
additional properties
any
Example generated
{
"code": 1,
"message": "example",
"details": [
{
"@type": "example"
}
]
}