New tools across 13 categories: - Email/Newsletter: beehiiv, klaviyo, postmark, brevo, activecampaign - Data Enrichment: clearbit, apollo - CRO/Testing: hotjar, optimizely - Analytics: plausible - Scheduling: calendly, savvycal - Forms: typeform - Messaging: intercom - Social: buffer - Video: wistia - Payments: paddle - Affiliate: partnerstack - Reviews: trustpilot, g2 - Push: onesignal - Webinar: demio, livestorm Each tool includes a zero-dependency CLI and integration guide. Registry and CLI README updated with all new entries. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
313 lines
6.7 KiB
Markdown
313 lines
6.7 KiB
Markdown
# Livestorm
|
|
|
|
Video engagement platform for webinars, virtual events, and online meetings with built-in analytics and integrations.
|
|
|
|
## Capabilities
|
|
|
|
| Integration | Available | Notes |
|
|
|-------------|-----------|-------|
|
|
| API | ✓ | Events, Sessions, People, Recordings, Webhooks |
|
|
| MCP | - | Not available |
|
|
| CLI | ✓ | [livestorm.js](../clis/livestorm.js) |
|
|
| SDK | - | REST API with JSON:API format |
|
|
|
|
## Authentication
|
|
|
|
- **Type**: API Token
|
|
- **Header**: `Authorization: {API_TOKEN}` (no prefix)
|
|
- **Content-Type**: `application/vnd.api+json` (JSON:API)
|
|
- **Scopes**: Identity, Events, Admin, Webhooks
|
|
- **Get token**: Account Settings > Integrations > Public API
|
|
- **Docs**: https://developers.livestorm.co/
|
|
|
|
## Common Agent Operations
|
|
|
|
### Ping (test authentication)
|
|
|
|
```bash
|
|
GET https://api.livestorm.co/v1/ping
|
|
|
|
Headers:
|
|
Authorization: {API_TOKEN}
|
|
Accept: application/vnd.api+json
|
|
```
|
|
|
|
### List events
|
|
|
|
```bash
|
|
GET https://api.livestorm.co/v1/events?page[number]=1&page[size]=25
|
|
|
|
Headers:
|
|
Authorization: {API_TOKEN}
|
|
Accept: application/vnd.api+json
|
|
```
|
|
|
|
### Create an event
|
|
|
|
```bash
|
|
POST https://api.livestorm.co/v1/events
|
|
|
|
Headers:
|
|
Authorization: {API_TOKEN}
|
|
Content-Type: application/vnd.api+json
|
|
|
|
{
|
|
"data": {
|
|
"type": "events",
|
|
"attributes": {
|
|
"title": "Product Demo Webinar",
|
|
"slug": "product-demo-webinar",
|
|
"estimated_duration": 60
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
### Get event details
|
|
|
|
```bash
|
|
GET https://api.livestorm.co/v1/events/{event_id}
|
|
|
|
Headers:
|
|
Authorization: {API_TOKEN}
|
|
Accept: application/vnd.api+json
|
|
```
|
|
|
|
### Update an event
|
|
|
|
```bash
|
|
PATCH https://api.livestorm.co/v1/events/{event_id}
|
|
|
|
Headers:
|
|
Authorization: {API_TOKEN}
|
|
Content-Type: application/vnd.api+json
|
|
|
|
{
|
|
"data": {
|
|
"type": "events",
|
|
"id": "{event_id}",
|
|
"attributes": {
|
|
"title": "Updated Webinar Title"
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
### List sessions
|
|
|
|
```bash
|
|
GET https://api.livestorm.co/v1/sessions?page[number]=1&page[size]=25
|
|
|
|
Headers:
|
|
Authorization: {API_TOKEN}
|
|
Accept: application/vnd.api+json
|
|
```
|
|
|
|
### Create a session for an event
|
|
|
|
```bash
|
|
POST https://api.livestorm.co/v1/events/{event_id}/sessions
|
|
|
|
Headers:
|
|
Authorization: {API_TOKEN}
|
|
Content-Type: application/vnd.api+json
|
|
|
|
{
|
|
"data": {
|
|
"type": "sessions",
|
|
"attributes": {
|
|
"estimated_started_at": "2025-06-15T14:00:00.000Z",
|
|
"timezone": "America/New_York"
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
### Register someone for a session
|
|
|
|
```bash
|
|
POST https://api.livestorm.co/v1/sessions/{session_id}/people
|
|
|
|
Headers:
|
|
Authorization: {API_TOKEN}
|
|
Content-Type: application/vnd.api+json
|
|
|
|
{
|
|
"data": {
|
|
"type": "people",
|
|
"attributes": {
|
|
"fields": {
|
|
"email": "attendee@example.com",
|
|
"first_name": "Jane",
|
|
"last_name": "Doe"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
### List session participants
|
|
|
|
```bash
|
|
GET https://api.livestorm.co/v1/sessions/{session_id}/people?page[number]=1&page[size]=25
|
|
|
|
Headers:
|
|
Authorization: {API_TOKEN}
|
|
Accept: application/vnd.api+json
|
|
```
|
|
|
|
### Remove a registrant from session
|
|
|
|
```bash
|
|
DELETE https://api.livestorm.co/v1/sessions/{session_id}/people?filter[email]=attendee@example.com
|
|
|
|
Headers:
|
|
Authorization: {API_TOKEN}
|
|
```
|
|
|
|
### List session chat messages
|
|
|
|
```bash
|
|
GET https://api.livestorm.co/v1/sessions/{session_id}/chat-messages
|
|
|
|
Headers:
|
|
Authorization: {API_TOKEN}
|
|
Accept: application/vnd.api+json
|
|
```
|
|
|
|
### List session questions
|
|
|
|
```bash
|
|
GET https://api.livestorm.co/v1/sessions/{session_id}/questions
|
|
|
|
Headers:
|
|
Authorization: {API_TOKEN}
|
|
Accept: application/vnd.api+json
|
|
```
|
|
|
|
### Get session recordings
|
|
|
|
```bash
|
|
GET https://api.livestorm.co/v1/sessions/{session_id}/recordings
|
|
|
|
Headers:
|
|
Authorization: {API_TOKEN}
|
|
Accept: application/vnd.api+json
|
|
```
|
|
|
|
### List all people
|
|
|
|
```bash
|
|
GET https://api.livestorm.co/v1/people?page[number]=1&page[size]=25
|
|
|
|
Headers:
|
|
Authorization: {API_TOKEN}
|
|
Accept: application/vnd.api+json
|
|
```
|
|
|
|
### Create a webhook
|
|
|
|
```bash
|
|
POST https://api.livestorm.co/v1/webhooks
|
|
|
|
Headers:
|
|
Authorization: {API_TOKEN}
|
|
Content-Type: application/vnd.api+json
|
|
|
|
{
|
|
"data": {
|
|
"type": "webhooks",
|
|
"attributes": {
|
|
"target_url": "https://example.com/webhook",
|
|
"event_name": "attendance"
|
|
}
|
|
}
|
|
}
|
|
```
|
|
|
|
## API Pattern
|
|
|
|
Livestorm follows the JSON:API specification:
|
|
- All responses use `data`, `attributes`, `relationships` structure
|
|
- Pagination: `page[number]` and `page[size]` query parameters
|
|
- Filtering: `filter[field]=value` query parameters
|
|
- Events contain multiple Sessions; Sessions contain People
|
|
- ISO 8601 timestamps throughout
|
|
|
|
## Key Metrics
|
|
|
|
### Event Metrics
|
|
- `title` - Event title
|
|
- `slug` - URL-friendly identifier
|
|
- `estimated_duration` - Duration in minutes
|
|
- `registration_page_enabled` - Registration page status
|
|
- `everyone_can_speak` - Whether all attendees can speak
|
|
|
|
### Session Metrics
|
|
- `status` - Session status (upcoming, live, past)
|
|
- `estimated_started_at` - Scheduled start time
|
|
- `started_at` - Actual start time
|
|
- `ended_at` - Actual end time
|
|
- `timezone` - Session timezone
|
|
- `attendees_count` - Number of attendees
|
|
- `registrants_count` - Number of registrants
|
|
|
|
### People Metrics
|
|
- `email` - Contact email
|
|
- `first_name` / `last_name` - Contact name
|
|
- `registrant_detail` - Registration metadata
|
|
- `attendance_rate` - Attendance percentage
|
|
- `attended_at` - Join timestamp
|
|
- `left_at` - Leave timestamp
|
|
|
|
## Parameters
|
|
|
|
### Pagination
|
|
- `page[number]` - Page number (default: 1)
|
|
- `page[size]` - Items per page (default: 25)
|
|
|
|
### Event Attributes
|
|
- `title` - Event title (required for create)
|
|
- `slug` - URL slug
|
|
- `description` - Event description
|
|
- `estimated_duration` - Duration in minutes
|
|
|
|
### Session Attributes
|
|
- `estimated_started_at` - ISO 8601 start time
|
|
- `timezone` - IANA timezone string
|
|
|
|
### Registration Fields
|
|
- `email` - Registrant email (required)
|
|
- `first_name` - First name
|
|
- `last_name` - Last name
|
|
|
|
### Webhook Events
|
|
- `attendance` - Triggered on session attendance
|
|
- `registration` - Triggered on new registration
|
|
- `unregistration` - Triggered on unregistration
|
|
|
|
## When to Use
|
|
|
|
- Hosting product demos and marketing webinars
|
|
- Automated webinar registration and attendee management
|
|
- Tracking webinar engagement and attendance rates
|
|
- Retrieving session recordings for content repurposing
|
|
- Building custom registration pages with API-driven registration
|
|
- Syncing webinar data with CRM and marketing automation
|
|
- Monitoring session Q&A and chat for follow-up
|
|
|
|
## Rate Limits
|
|
|
|
- **10,000 API calls per 30-day period** (organization-wide)
|
|
- Rate limits shared across all API tokens in the organization
|
|
- Plan accordingly for high-volume operations
|
|
- Use webhooks instead of polling to conserve quota
|
|
|
|
## Relevant Skills
|
|
|
|
- webinar-marketing
|
|
- event-marketing
|
|
- lead-generation
|
|
- content-strategy
|
|
- lifecycle-marketing
|
|
- customer-engagement
|