Skip to main content
POST
/
caliper
/
event
/
validate
curl --request POST \
  --url https://caliper.alpha-1edtech.ai/caliper/event/validate \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "sensor": "https://alpharead.alpha.school",
  "sendTime": "<dynamic-timestamp>",
  "dataVersion": "http://purl.imsglobal.org/ctx/caliper/v1p2",
  "data": [
    {
      "id": "urn:uuid:c51570e4-f8ed-4c18-bb3a-dfe51b2cc594",
      "eventTime": "2024-04-24T14:12:00.000Z",
      "profile": "TimebackProfile",
      "type": "ActivityEvent",
      "actor": {
        "id": "https://api.alpha-1edtech.ai/ims/oneroster/rostering/v1p2/users/<user-id>",
        "type": "TimebackUser",
        "email": "[email protected]"
      },
      "action": "Completed",
      "object": {
        "id": "https://api.alpha-1edtech.ai/ims/oneroster/rostering/v1p2/courses/component-resources/<sourcedId>",
        "type": "TimebackActivityContext",
        "subject": "Reading",
        "app": {
          "name": "PowerPath UI"
        },
        "activity": {
          "name": "Answered quiz"
        },
        "course": {
          "id": "https://api.alpha-1edtech.ai/ims/oneroster/rostering/v1p2/courses/<course-id>",
          "name": "Reading G3"
        }
      },
      "generated": {
        "id": "https://your-app-url.com/ims/metrics/collections/activity/1",
        "type": "TimebackActivityMetricsCollection",
        "items": [
          {
            "type": "xpEarned",
            "value": 100
          }
        ]
      }
    }
  ]
}
'
{
  "status": "<string>",
  "message": "<string>",
  "errors": "<unknown>"
}

Authorizations

Authorization
string
header
required

The access token received from the authorization server in the OAuth 2.0 flow.

Body

application/json

The Caliper envelope containing events to validate

Envelope

Represents a package containing events and entity data for ingestion

sensor
string<uri>
required

The sensor.id that uniquely identifies the Caliper Sensor. Should be in the form of an IRI

Example:

"https://example.edu/sensors/1"

sendTime
string<date-time>
required

The time the data was sent, formatted as an ISO 8601 date and time in UTC

Example:

"2023-08-15T14:12:00.000Z"

dataVersion
string
required

The data format version. Indicates which version of the Caliper specification governs the form of the entities and events

Allowed value: "http://purl.imsglobal.org/ctx/caliper/v1p2"
Example:

"http://purl.imsglobal.org/ctx/caliper/v1p2"

data
object[]
required

The data payload, consisting of an array where items are Caliper Events or Entities

Minimum array length: 1

Event

Represents a Caliper Event that describes learning activities

Example:
[
{
"id": "urn:uuid:c51570e4-f8ed-4c18-bb3a-dfe51b2cc594",
"type": "Event",
"actor": "https://example.edu/users/554433",
"action": "Created",
"object": "https://example.edu/terms/201801/courses/7/sections/1/assignments/1",
"eventTime": "2023-08-15T14:12:00.000Z"
}
]

Response

The request payload is valid

status
string
required
Allowed value: "success"
message
string
required
errors
any