Stream sandbox function invocation events
curl --request GET \
--url https://dust.tt/api/w/{wId}/sandbox-functions/{functionId}/invocations/{invocationId}/events \
--header 'Authorization: Bearer <token>'import requests
url = "https://dust.tt/api/w/{wId}/sandbox-functions/{functionId}/invocations/{invocationId}/events"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://dust.tt/api/w/{wId}/sandbox-functions/{functionId}/invocations/{invocationId}/events', 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://dust.tt/api/w/{wId}/sandbox-functions/{functionId}/invocations/{invocationId}/events",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://dust.tt/api/w/{wId}/sandbox-functions/{functionId}/invocations/{invocationId}/events"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://dust.tt/api/w/{wId}/sandbox-functions/{functionId}/invocations/{invocationId}/events")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://dust.tt/api/w/{wId}/sandbox-functions/{functionId}/invocations/{invocationId}/events")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"type": "sandbox_function_invocation_created",
"created": 123,
"invocation": {
"sId": "<string>",
"functionId": "<string>",
"status": "created",
"createdAt": "2023-11-07T05:31:56Z"
}
}Private Events
Stream sandbox function invocation events
Stream real-time events for a Pod or Frame function invocation using Server-Sent Events (SSE). This endpoint is redirected to /api/sse/ for SSE traffic routing.
GET
/
api
/
w
/
{wId}
/
sandbox-functions
/
{functionId}
/
invocations
/
{invocationId}
/
events
Stream sandbox function invocation events
curl --request GET \
--url https://dust.tt/api/w/{wId}/sandbox-functions/{functionId}/invocations/{invocationId}/events \
--header 'Authorization: Bearer <token>'import requests
url = "https://dust.tt/api/w/{wId}/sandbox-functions/{functionId}/invocations/{invocationId}/events"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://dust.tt/api/w/{wId}/sandbox-functions/{functionId}/invocations/{invocationId}/events', 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://dust.tt/api/w/{wId}/sandbox-functions/{functionId}/invocations/{invocationId}/events",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://dust.tt/api/w/{wId}/sandbox-functions/{functionId}/invocations/{invocationId}/events"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://dust.tt/api/w/{wId}/sandbox-functions/{functionId}/invocations/{invocationId}/events")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://dust.tt/api/w/{wId}/sandbox-functions/{functionId}/invocations/{invocationId}/events")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"type": "sandbox_function_invocation_created",
"created": 123,
"invocation": {
"sId": "<string>",
"functionId": "<string>",
"status": "created",
"createdAt": "2023-11-07T05:31:56Z"
}
}Authorizations
Your DUST API key is a Bearer token.
Path Parameters
ID of the workspace
ID of the Pod or Frame function
ID of the sandbox function invocation
Response
SSE event stream. Each event is sent as data: {json}\n\n.
Events are discriminated by the type field.