Revisions

Revisions are point-in-time snapshots for revisable resources. This page is the one to read when you need to explain what changed, build a diff, or inspect the exact resource state Adobe recorded at a specific revision ID.

Familyclient.revisions

Revision lists

The SDK distinguishes between resource-scoped revision lists and generic revision snapshots.

  • list_for_rule(rule_id) returns Array<Rule>
  • list_for_data_element(data_element_id) returns Array<DataElement>
  • list_for_extension(extension_id) returns Array<Extension>

Revision snapshots

find(revision_id) returns a Revision wrapper that can expose:

AttributeData typeDescription
activity_type
String

The action that created the revision, such as updated or published.

entity_id
String

Adobe ID of the resource this revision belongs to.

entity_type
String

Resource type such as rules, data_elements, or extensions.

entity_snapshot
Hash

Full point-in-time resource attributes extracted from the included array when available.

entity_relationships
Hash

Full point-in-time relationship payload extracted from the included entity when Adobe returns it.

When Adobe includes relationship data on the revisioned entity, ReactorSDK preserves it under entity_relationships. The comprehensive review helpers use that relationship payload to understand point-in-time rule-component membership during upstream comparisons.

Revision snapshot lookup

# RE123 = revision ID.
# Fetch one revision resource by Adobe revision ID.
revision = client.revisions.find("RE123")

# Print the resource type the revision belongs to.
puts revision.entity_type
# Print the point-in-time resource snapshot carried by the revision wrapper.
puts revision.entity_snapshot.inspect
# Print point-in-time relationships such as rule_components when Adobe includes them.
puts revision.entity_relationships.inspect

Raw API mapping

Sample: fetch a full revision snapshot

GET /revisions/:revision_id

# RE... = revision ID.
# Fetch one revision and its included entity snapshot.
curl -s "https://reactor.adobe.io/revisions/RE1234567890abcdef1234567890abcd" \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
  -H "x-api-key: YOUR_ADOBE_CLIENT_ID" \
  -H "x-gw-ims-org-id: YOUR_IMS_ORG_ID" \
  -H "Accept: application/vnd.api+json;revision=1"

Sample response

{
  "data": {
    // RE... = revision ID.
    "id": "RE1234567890abcdef1234567890abcd",
    "type": "revisions",
    "attributes": {
      // Adobe creation timestamp for the revision event.
      "created_at": "2026-03-26T10:07:02.000Z",
      // Type of activity that created the revision.
      "activity_type": "updated"
    },
    "relationships": {
      "entity": {
        "data": {
          // RL... = resource ID this revision belongs to.
          "id": "RL1234567890abcdef1234567890abcd",
          "type": "rules"
        }
      }
    }
  },
  // Included snapshot for the entity at the time of this revision.
  "included": [
    {
      // RL... = rule ID.
      "id": "RL1234567890abcdef1234567890abcd",
      "type": "rules",
      "attributes": {
        // Human-readable rule name at that revision.
        "name": "Order Confirmation",
        // Whether the rule was enabled at that revision.
        "enabled": true,
        // Adobe creation timestamp.
        "created_at": "2026-03-26T10:05:41.000Z",
        // Adobe last-update timestamp at the moment of this revision.
        "updated_at": "2026-03-26T10:07:02.000Z",
        // Publish timestamp, or null while unpublished.
        "published_at": null,
        // Revision timestamp.
        "revised_at": "2026-03-26T10:07:02.000Z"
      }
    }
  ]
}

Was this page helpful?