🤖
Transistor FM
Manage podcasts on Transistor.fm via their API. Use when creating, publishing, updating, or deleting podcast episodes, uploading audio files, listing shows/e...
安全通过
🔗API
技能说明
name: transistor-fm description: Manage podcasts on Transistor.fm via their API. Use when creating, publishing, updating, or deleting podcast episodes, uploading audio files, listing shows/episodes, checking analytics, or managing private podcast subscribers. Triggers on any Transistor.fm podcast management task.
Transistor.fm Podcast Management
Manage podcasts hosted on Transistor.fm through their REST API.
Prerequisites
- Transistor.fm API key (from Dashboard → Account)
- Store as environment variable
TRANSISTOR_API_KEYor retrieve from a secrets manager
Quick Reference
All requests use base URL https://api.transistor.fm/v1 with header x-api-key: <key>.
Rate limit: 10 requests per 10 seconds.
For full endpoint details, parameters, and response formats, see references/api.md.
Core Workflows
List shows and episodes
# Get all shows
curl -s "$BASE/shows" -H "x-api-key: $KEY"
# Get episodes for a show
curl -s "$BASE/episodes?show_id=SHOW_ID" -H "x-api-key: $KEY"
Upload audio and create an episode
Three-step process:
# 1. Get authorized upload URL
UPLOAD=$(curl -s "$BASE/episodes/authorize_upload?filename=episode.mp3" -H "x-api-key: $KEY")
# Extract upload_url and audio_url from response
# 2. Upload the audio file
curl -X PUT -H "Content-Type: audio/mpeg" -T /path/to/episode.mp3 "$UPLOAD_URL"
# 3. Create episode with the audio_url
curl -s "$BASE/episodes" -X POST -H "x-api-key: $KEY" \
-d "episode[show_id]=SHOW_ID" \
-d "episode[title]=My Episode" \
-d "episode[summary]=Short description" \
-d "episode[audio_url]=$AUDIO_URL"
Episode is created as draft. Publish separately.
Publish an episode
# Publish now
curl -s "$BASE/episodes/EPISODE_ID/publish" -X PATCH -H "x-api-key: $KEY" \
-d "episode[status]=published"
# Schedule for future
curl -s "$BASE/episodes/EPISODE_ID/publish" -X PATCH -H "x-api-key: $KEY" \
-d "episode[status]=scheduled" \
-d "episode[published_at]=2026-03-01 09:00:00"
Check analytics
# Show-level (last 14 days default)
curl -s "$BASE/analytics/SHOW_ID" -H "x-api-key: $KEY"
# Episode-level
curl -s "$BASE/analytics/episodes/EPISODE_ID" -H "x-api-key: $KEY"
# Custom date range (dd-mm-yyyy)
curl -s "$BASE/analytics/SHOW_ID?start_date=01-01-2026&end_date=31-01-2026" -H "x-api-key: $KEY"
Tips
- Episodes are always created as drafts — publish is a separate step, allowing review before going live
- Use
episode[increment_number]=trueto auto-assign the next episode number episode[description]supports HTML;episode[summary]is plain text- Audio upload URLs expire in 600 seconds — upload promptly after authorizing
- Use sparse fieldsets to reduce response size:
fields[episode][]=title&fields[episode][]=status
如何使用「Transistor FM」?
- 打开小龙虾AI(Web 或 iOS App)
- 点击上方「立即使用」按钮,或在对话框中输入任务描述
- 小龙虾AI 会自动匹配并调用「Transistor FM」技能完成任务
- 结果即时呈现,支持继续对话优化