Ingest a Caliper event
curl --request POST \
--url https://api.alpha-1edtech.ai/edubridge/caliper/event \
--header 'Content-Type: application/json' \
--data '
{
"sensor": "<string>",
"sendTime": "<string>",
"data": [
{}
],
"dataVersion": "<string>"
}
'import requests
url = "https://api.alpha-1edtech.ai/edubridge/caliper/event"
payload = {
"sensor": "<string>",
"sendTime": "<string>",
"data": [{}],
"dataVersion": "<string>"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({sensor: '<string>', sendTime: '<string>', data: [{}], dataVersion: '<string>'})
};
fetch('https://api.alpha-1edtech.ai/edubridge/caliper/event', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.alpha-1edtech.ai/edubridge/caliper/event",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'sensor' => '<string>',
'sendTime' => '<string>',
'data' => [
[
]
],
'dataVersion' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.alpha-1edtech.ai/edubridge/caliper/event"
payload := strings.NewReader("{\n \"sensor\": \"<string>\",\n \"sendTime\": \"<string>\",\n \"data\": [\n {}\n ],\n \"dataVersion\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.alpha-1edtech.ai/edubridge/caliper/event")
.header("Content-Type", "application/json")
.body("{\n \"sensor\": \"<string>\",\n \"sendTime\": \"<string>\",\n \"data\": [\n {}\n ],\n \"dataVersion\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.alpha-1edtech.ai/edubridge/caliper/event")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"sensor\": \"<string>\",\n \"sendTime\": \"<string>\",\n \"data\": [\n {}\n ],\n \"dataVersion\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"message": "<string>"
}{
"error": "<string>",
"details": "<unknown>"
}Progression
Ingest a Caliper event
Receives Caliper events from educational app sensors. The caliper-ingestion Lambda debundles multi-event payloads and enqueues them on the caliper-events FIFO SQS queue.
POST
/
edubridge
/
caliper
/
event
Ingest a Caliper event
curl --request POST \
--url https://api.alpha-1edtech.ai/edubridge/caliper/event \
--header 'Content-Type: application/json' \
--data '
{
"sensor": "<string>",
"sendTime": "<string>",
"data": [
{}
],
"dataVersion": "<string>"
}
'import requests
url = "https://api.alpha-1edtech.ai/edubridge/caliper/event"
payload = {
"sensor": "<string>",
"sendTime": "<string>",
"data": [{}],
"dataVersion": "<string>"
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({sensor: '<string>', sendTime: '<string>', data: [{}], dataVersion: '<string>'})
};
fetch('https://api.alpha-1edtech.ai/edubridge/caliper/event', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.alpha-1edtech.ai/edubridge/caliper/event",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'sensor' => '<string>',
'sendTime' => '<string>',
'data' => [
[
]
],
'dataVersion' => '<string>'
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.alpha-1edtech.ai/edubridge/caliper/event"
payload := strings.NewReader("{\n \"sensor\": \"<string>\",\n \"sendTime\": \"<string>\",\n \"data\": [\n {}\n ],\n \"dataVersion\": \"<string>\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.alpha-1edtech.ai/edubridge/caliper/event")
.header("Content-Type", "application/json")
.body("{\n \"sensor\": \"<string>\",\n \"sendTime\": \"<string>\",\n \"data\": [\n {}\n ],\n \"dataVersion\": \"<string>\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.alpha-1edtech.ai/edubridge/caliper/event")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"sensor\": \"<string>\",\n \"sendTime\": \"<string>\",\n \"data\": [\n {}\n ],\n \"dataVersion\": \"<string>\"\n}"
response = http.request(request)
puts response.read_body{
"success": true,
"message": "<string>"
}{
"error": "<string>",
"details": "<unknown>"
}Body
application/json
Sensor identifier (e.g. app name)
ISO 8601 timestamp of when the envelope was sent
Array of Caliper event objects
Show child attributes
Show child attributes
Caliper data version (e.g. http://purl.imsglobal.org/ctx/caliper/v1p2)
⌘I