Creating an Event Against an Asset

Creating your first Event

If you wish to begin tracking your Asset history, you need to create Events.

Asset Creation is the first Event. The more Events recorded against an Asset, the richer and deeper its history becomes.

Events track key moments of an Asset’s lifecycle; details of Who Did What When to an Asset.

Before creating an Event, follow this guide to create your first example Asset.

Creating Events

  1. Create an Event.

When viewing your Asset, click the Record Event button.

Recording an Event

To use the YAML Runner, please visit this link for installation instructions.

To create your Event, use the action EVENTS_CREATE.

---
steps:
  - step:
      action: EVENTS_CREATE
      description: Record event against My First Container.
      asset_label: assets/<asset-id>
    behaviour: RecordEvidence

The asset_id must match the Asset ID found in the details of your Asset. See Step 7 of Creating an Asset.

Create an empty file, in later steps we will add the correct JSON.

{

}

  1. Add Event type and description.

You will see the following Event creation form:

Entering Event Details

Fill out metadata about your Event.

operation and behaviour detail what class of Event is being performed. By default this should always be Record and RecordEvidence, respectively.

In the attributes section you should also add the required RKVST attributes arc_description and arc_display_type to represent Event Description and Event Type.

---
steps:
  - step:
      action: EVENTS_CREATE
      description: Record event against My First Container.
      asset_label: assets/<asset-id> 
    operation: Record
    behaviour: RecordEvidence
    event_attributes:
      arc_description: Inspection Event
      arc_display_type:  Inspection

Fill out metadata about your Event; operation and behaviour detail what class of Event is being performed. By default this should always be Record and RecordEvidence, respectively.

In the attributes section you should also add the required RKVST attributes arc_description and arc_display_type to represent Event Description and Event Type.

{
  "operation": "Record",
  "behaviour": "RecordEvidence",
  "event_attributes": {
    "arc_description": "Inspection Event",
    "arc_display_type": "Inspection",
  }
}

This Event will be POSTed to a specific Asset endpoint when the curl command is run. To do this, you will need the desired assets/<asset-id> string.


  1. You may enter both Event and Asset attributes.
  • Event Attributes - Attributes specific to an Event, i.e. which device recorded the Event
  • Asset Attributes - Attributes of the Asset that may change as a result of the Event, i.e. overall weight of a container

Select the Add Attribute button on each tab to add your key-value pairs. You may also add an attachment to your Event. Select the symbol to upload a file. In this case, we will attach a PDF document labeled Inspection Standards.

Event Specific Attributes
Event Asset Attributes

Add your event_attributes and asset_attributes as key-value pairs. You may also add an attachment to your Event. In this case, we have attached a PDF document labeled Inspection Standards.

---
steps:
  - step:
      action: EVENTS_CREATE
      description: Record event against My First Container.
      asset_label: assets/<asset-id>
    operation: Record
    behaviour: RecordEvidence
    event_attributes:
      arc_description: Inspection Event
      arc_display_type:  Inspection
      Cargo: Rare Metals
    asset_attributes:
      Weight: "1192kg"
    attachments: 
      - filename: inspection_standards.pdf
        content_type: document/pdf
        display_name: Inspection Standards
    confirm: true

You may add an attachment to your Event. To do so you will need to upload your attachment to RKVST using the Blobs API.

curl -v -X POST \
    -H "@$BEARER_TOKEN_FILE" \
    -H "content_type=document/pdf" \
    -F "file=@/path/to/file" \
    https://app.rkvst.io/archivist/v1/blobs

Add your event_attributes and asset_attributes as key-value pairs. Use the blobs/<attachment-id> returned from the curl command above as the arc_attachment_identity in your Event.

{
  "operation": "Record",
  "behaviour": "RecordEvidence",
  "event_attributes": {
    "arc_description": "Inspection Event",
    "arc_display_type": "Inspection",
    "Cargo": "Rare Metals",
    "inspection_standards": {
      "arc_attribute_type": "arc_attachment",
      "arc_blob_hash_value": "01ba4719c80b6fe911b091a7c05124b64eeece964e09c058ef8f9805daca546b",
      "arc_blob_identity": "blobs/<blob-id>",
      "arc_blob_hash_alg": "SHA256",
      "arc_file_name": "standards.pdf",
      "arc_display_name": "Inspection Standards",
      },
  },
  "asset_attributes": {
    "Weight": "1192kg"
  }
}

Here we see someone noted the type of cargo loaded in the Event, and recorded the total weight of the cargo using a newly defined Weight attribute.

Every Event has an automatically generated timestamp_accepted and principal_accepted attribute that records when who performed what, as submitted to RKVST.

There is an option to append timestamp_declared and principal_declared attributes on the Event, for example, if the Event happened offline or a third party reports it. This creates a more detailed record.

PDFs or images can be recorded with an Event in the same way as an Asset. This is useful for storing associated material for posterity. For example, each Inspection Event can store the PDF document of a specific standard for container inspection. This allows historical compliance checking of Events.

  1. Record your Event.

Once you have entered all data, click the Record Event Button to add to your Asset.

Submitting the Event
You will see that the Asset Attribute we changed is also recorded in the Asset View.

Use the archivist_runner to run your YAML file!

$ archivist_runner \
      -u https://app.rkvst.io \
      --client-id <your-client-id> \
      --client-secret <your-client-secret> \
      my_first_container_inspection_event.yaml

Use the curl command to run your JSON file! See instructions for creating your BEARER_TOKEN_FILE here.

curl -v -X POST \
    -H "@$BEARER_TOKEN_FILE" \
    -H "Content-type: application/json" \
    -d "@/path/to/jsonfile" \
    https://app.rkvst.io/archivist/v2/assets/<asset-id>/events

  1. View your Event details.

Click the Event row to inspect the Event:

Viewing an Event

Here we see the details entered earlier and also a tab that will show both the Event attributes and Asset attributes:

Viewing Event Attributes

The EVENTS_LIST action can be used to view all Events, or filtered using attributes (attrs) to view details of a specific Event.

To view all Events, use:

---
steps:
  - step:
      action: EVENTS_LIST
      description: List all events.
      print_response: true

To view the details of the Event you just created for My First Container, use:

---
steps:
  - step:
      action: EVENTS_LIST
      description: List inspection Events against the Asset 'My First Container'.
      print_response: true
      asset_label: assets/<asset-id>
    attrs:
      arc_display_type: Inspection
    asset_attrs:
      arc_display_type: Shipping Container 

Event data can be viewed using curl commands.

To view all Events across all Assets, use:

curl -v -X GET \
     -H "@$BEARER_TOKEN_FILE" \
     https://app.rkvst.io/archivist/v2/assets/-/events

To view the details of the Event you just created for My First Container, use:

curl -v -X GET \
     -H "@$BEARER_TOKEN_FILE" \
     https://app.rkvst.io/archivist/v2/assets/<asset-id>/events/<event-id>

«««< HEAD Please see the Administation section for information on how to manage your assets.

In the next section we look at a specific type of Asset, the Document Profile Asset.

main

Edit this page on GitHub