Files
directus/docs/reference/system/revisions.md
Bevis Halsey-Perry 60df20d780 Simplified generic examples and consolidated imports for sdk examples in docs. (#19370)
* Simplified generics and imports for items page snippets

* Simplified generics and imports for files page snippets

* Fixing simplified generic snippets in items page

* Simplified generics and imports for activity page snippets

* Simplified generics and imports for collections page snippets

* Simplified generics and imports for dashboards page snippets

* Simplified generics and imports for extensions page snippets

* Simplified generics and imports for fields page snippets

* Simplified generics and imports for flows page snippets

* Simplified generics and imports for folders page snippets

* Simplified generics and imports for notifications page snippets

* Simplified generics and imports for operations page snippets

* Simplified generics and imports for panels page snippets

* Simplified generics and imports for permissions page snippets

* Simplified generics and imports for presets page snippets

* Simplified generics and imports for relations page snippets

* Simplified generics and imports for relations page snippets

* Simplified generics and imports for revisions page snippets

* Simplified generics and imports for roles page snippets

* Consolidated imports for schema page snippets

* Simplified generics and imports for server page snippets

* Simplified generics and imports for settings page snippets

* Fixed mixed up snippets and simplified generics and imports for shares page snippets

* Simplified generics and imports for translation page snippets

* Fixed mixed up snippets and simplified generics and imports for user page snippets

* Simplified generics and imports fo uutilitie pages snippets

* Simplified generics and imports for webhook pages snippets

* Simplified generics and imports for authentication pages snippets

* Consolidated imports for query pages sdk snippets

* Format files

* Update lockfile

* Fix spelling

* Format snippets

* Aling `result` const

* Small clean-ups

- Align `SEARCH` snippets, move "Learn more..." next to other hint
- ids -> IDs
- Other alignments

---------

Co-authored-by: Bevis Halsey-Perry <hi@be7.is>
Co-authored-by: Pascal Jufer <pascal-jufer@bluewin.ch>
2023-08-08 10:16:23 -04:00

4.1 KiB

description, readTime, pageClass
description readTime pageClass
REST and GraphQL API documentation on the Revisions collection in Directus. 2 min read page-reference

Revisions

Revisions are individual changes to items made. Directus keeps track of changes made, so you're able to revert to a previous state at will. Learn more about Revisions.

The Revision Object

id integer
Primary key of the revision.

activity many-to-one
Related activity record. Many-to-one to activity.

collection string
Collection in which this revision happened.

item string
Primary key of the item that was changed.

data object
Snapshot of the top-level item data.

delta object
Snapshot of the changes made in this revision.

parent many-to-one
Parent revision that triggered this revision. Many-to-one to revisions (recursive).

{
	"id": 368,
	"activity": 438,
	"collection": "articles",
	"item": "1",
	"data": {
		"title": "Hello World"
	},
	"delta": {
		"title": "Hello from the Docs!"
	},
	"parent": null
}

List revisions

List all revisions that exist in Directus.

::: tip Permissions

The data returned in this endpoint will be filtered based on the user's permissions. For example, revisions that apply to a collection that the current user doesn't have access to are stripped out.

:::

Request

GET /revisions

SEARCH /revisions

If using SEARCH you can provide a query object as the body of your request.

Learn more about SEARCH ->

POST /graphql/system

type Query {
	revisions: [directus_revisions]
}
import { createDirectus, rest, readRevisions } from '@directus/sdk';

const client = createDirectus('directus_project_url').with(rest());

const result = await client.request(readRevisions(query_object));

Query Parameters

Supports all global query parameters.

Response

An array of up to limit revision objects. If no items are available, data will be an empty array.

Examples

GET /revisions

SEARCH /revisions

POST /graphql/system

query {
	revisions {
		id
		data
		delta
	}
}
import { createDirectus, rest, readRevisions } from '@directus/sdk';

const client = createDirectus('https://directus.example.com').with(rest());

const result = await client.request(
	readRevisions({
		fields: ['*'],
	})
);

Retrieve a revision

List an existing revision by primary key.

Request

GET /revisions/:id

POST /graphql/system

type Query {
	revisions_by_id(id: ID!): directus_revisions
}
import { createDirectus, rest, readRevision } from '@directus/sdk';

const client = createDirectus('directus_project_url').with(rest());

const result = await client.request(readRevision(revision_id, query_object));

Query Parameters

Supports all global query parameters.

Response

Returns the requested revision object.

Example

GET /revisions/322

POST /graphql/system

query {
	revisions_by_id(id: 322) {
		id
		data
		delta
	}
}
import { createDirectus, rest, readRevision } from '@directus/sdk';

const client = createDirectus('https://directus.example.com').with(rest());

const result = await client.request(
	readRevision('53201', {
		fields: ['*'],
	})
);