Skip to content

Events_UndoEvent_Account

POST
/v1/accounts/{account}/events/{event}:undo
curl --request POST \
--url https://junction-api.qualiastudios.dev/v1/accounts/example/events/example:undo \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <X-API-Key>' \
--data '{ "name": "example" }'

Undoes an event. The service that wrote it does the undo, in its own transaction, and records it as a new event whose undoes is this event’s id; the event itself never changes. Each event is undone at most once.

FAILED_PRECONDITION, with the reason in the message, when the event is not undoable (its kind can’t be undone, or this one was written so), when it was undone already, or when what it changed has changed since (an episode ruled or edited again, an issue edited or dismissed). ABORTED when the episodes it edited move while the undo runs: send it again. Needs spaces:read and datasets:write on the event’s workspace (only qds events undo today); an event of the organization itself needs spaces:read and spaces:members on the organization. An API key needs data:write.

account
required
string

The account id.

event
required
string

The event id.

Media type application/json

Request for Events.UndoEvent.

object
name
required

The event to undo, by its name: accounts/{account}/workspaces/{workspace}/events/{event} for a workspace’s, accounts/{account}/events/{event} for the organization’s own. A workspace’s event named by the organization path is refused.

string
Example generated
{
"name": "example"
}

OK

Media type application/json

Response for Events.UndoEvent.

object
event

The event that records the undo, named under the same parent as the request; its undoes is the undone event’s id. It reaches the record, and GetEvent, ListEvents and the live stream, when the relay copies it, normally within a second.

string
Example generated
{
"event": "example"
}

Default error response

Media type application/json
One of:
API error

A refusal from the API itself.

object
code
required

The gRPC code name in upper case, e.g. NOT_FOUND.

string
message
required
string
retryable
required

Whether the same call may succeed if retried.

boolean
details
required

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.

Array<object>
object
Example generated
{
"code": "example",
"message": "example",
"retryable": true,
"details": [
{}
]
}