Events_ReadActivityDetails_Workspace
const url = 'https://junction-api.qualiastudios.dev/v1/accounts/example/workspaces/example/events/example:activityDetails';const options = {method: 'GET', headers: {'X-API-Key': '<X-API-Key>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://junction-api.qualiastudios.dev/v1/accounts/example/workspaces/example/events/example:activityDetails \ --header 'X-API-Key: <X-API-Key>'Reads bounded recorded targets after checking their current QDS access.
Authorizations
Section titled “Authorizations ”Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”The account id.
The workspace id.
The event id.
Query Parameters
Section titled “Query Parameters ”Default 50, maximum 100 targets.
Independent target cursor, bound to the event and Activity policy version.
Responses
Section titled “ Responses ”OK
Recorded evidence, with current target metadata separately identified.
object
Recorded targets in immutable order, never a search of today’s selection.
One recorded episode reference. Content is returned only after GetEpisode authorizes the exact reference as the caller. An unavailable target retains only its recorded identifier; no reason, state or revision content escapes.
object
Immutable recorded reference.
Current readable episode number, not a historical label.
Current upload returned by QDS, not an inferred event-time source.
Missing or inaccessible, without claiming deletion.
Recorded ruling reason, at most 4096 characters.
Recorded previous review state, or empty when unknown.
Exact recorded edit revision. Absent when not recorded.
Exact recorded previous revision. Absent is unknown, not revision zero.
What a review decided on, captured in its transaction. Absent on reviews recorded before it was captured: never inferred from today’s episode.
object
The episode’s edit revision at the decision; 0 is the original recording. Absent when it was not recorded.
The upload the episode came from at the decision.
The content snapshot’s id at the decision (hex). An immutable reference, not a dataset version.
Canonical action identity.
Scope recorded by the producer.
Current authorized dataset name; empty when unavailable.
Current authorized dataset slug; empty when unavailable.
Empty when the recorded target list ends.
True when dataset access could not be established. Does not imply deletion.
Historical action membership was not recorded for these individual events.
Safe recorded field changes: dataset fields, or an episode task link that moved without a new revision. Never ingest configuration JSON.
An allowlisted scalar dataset field, with missing evidence kept distinct.
An episode’s linked_task uses task resource names, where empty means no task.
object
Known field path.
Recorded previous value; absent means unknown.
Recorded resulting value; absent means unknown.
True for a durable request manifest, even when its exact count is unknown.
Requested checks, without child run or findings counts.
Typed admitted re-ingest operation UUID, when recorded.
Example generated
{ "targets": [ { "episode": "example", "currentLabel": "example", "currentUpload": "example", "unavailable": true, "reason": "example", "previousState": "example", "revision": 1, "previousRevision": 1, "reviewContext": { "revision": 1, "upload": "example", "contentReference": "example" } } ], "event": "example", "dataset": "example", "currentDatasetLabel": "example", "currentDatasetSlug": "example", "nextPageToken": "example", "unavailable": true, "originalBatchUnknown": true, "changes": [ { "field": "example", "previous": "example", "current": "example" } ], "requestRecorded": true, "checks": [ "example" ], "admissionOperation": "example"}default
Section titled “default ”Default error response
A refusal from the API itself.
object
The gRPC code name in upper case, e.g. NOT_FOUND.
Whether the same call may succeed if retried.
Empty, except when a dataset copy or move is refused: then one google.rpc.ErrorInfo with the refusal’s reason code, its domain and, in metadata, the datasets it names.
object
A refusal from the gateway before the call reaches the API, for example 401 bad or missing API key, 403 key lacks the scope or environment closed, 413 body too large.
object
What went wrong.
Example generated
{ "code": "example", "message": "example", "retryable": true, "details": [ {} ]}