Run automations powered by your robotics data
Foxglove now has webhooks! Webhooks are a powerful way to integrate Foxglove with automated workflows and streamline your robotics development. Instead of polling for new recordings, events, and devices, Foxglove will push these updates to you for immediate action.
In a robust observability stack, robotics data goes through recording, uploading, processing, and analysis. The Foxglove Agent automates the transition between recording and uploading. Now, webhooks can automate the transitions between uploading, processing, and analyzing data. Let's look at some examples of how this works.
After uploading your robotics logs to Foxglove, you can transform and augment that data for visualization and analysis. You might convert raw sensor outputs into visualization messages to conserve compute resources on-robot. You may also ingest data into an analytics database or calculate some statistics. As your operation scales, these might evolve from batch scripts on a laptop into a full ETL workflow in the cloud. With the recording.imported
webhook, you can automatically trigger these workflows as soon as new data is available.
While reviewing recordings, your team might create Foxglove Events to identify incidents for review. With the event.created
webhook, your automations can dispatch data for labeling, create tickets, or notify your team in Slack.
With the recording.imported
webhook, you can trigger workflows that scan the recording for notable instances and tag them with Events using the Foxglove API.
Labeling is at the heart of any machine learning process. As your robotics operation scales and your data volumes increase, it’s natural to build a full labeling pipeline, with manual and automated components. Using the recording.imported
webhook, you can set your pipeline to start working automatically as soon as new data is available.
Reducing the delay between data becoming available and people using it to solve problems can dramatically accelerate your development. With the recording.imported
event, you can alert your team with a Slack notification as soon as a recording has successfully uploaded.
The webhook will send a JSON payload similar to this one to your nominated URL:
{
"attemptedAt": "2024-01-16T23:52:59.503Z",
"timestamp": "2024-01-16T23:52:58.897Z",
"webhookEventId": "whev_0chrYmdkpp6dg6yS",
"webhookId": "whk_0cYcdHhQ3biM8ggI",
"type": "recording.imported",
"recording": {
"recordingId": "oSPQHcyx6aDuYW8s",
"path": "robot-data-2022-08-12.mcap"
}
}
language-json
You can then pass this off to a workflow automation tool like Zapier to send your team a shareable link to stream the data.
With webhooks, your automated workflows can start working with data as soon as it's available. Sign up for a Foxglove Team or Enterprise plan and check out our docs to start working with webhooks.We’ve started with a limited set of webhook event types, but we’re excited to hear what our community needs. Give us feedback in our Discord community, or reach out to us directly.