CONNECT APP
Build with Symbl.ai
Artificial Intelligence (AI)
- OAuth
MCP
Give your agent Symbl.ai tools
Every Symbl.ai action is exposed as an MCP tool on Pipedream's remote server. Point a client at it with your end user's ID and Connect resolves that user's Symbl.ai account for each tool call — you store no tokens.
// accessToken: mint a short-lived token with the Connect SDK — see the MCP guide
const transport = new StreamableHTTPClientTransport(
new URL("https://remote.mcp.pipedream.net/v3"),
{
requestInit: {
headers: {
Authorization: `Bearer ${accessToken}`,
"x-pd-project-id": "{project_id}",
"x-pd-environment": "production",
"x-pd-external-user-id": "{external_user_id}", // any stable ID for this user in your system
"x-pd-app-slug": "symbl_ai",
},
},
},
)
const mcp = new Client({ name: "my-agent", version: "1.0.0" })
await mcp.connect(transport)
const { tools } = await mcp.listTools()
// e.g. run Create Formatted Transcript:
const result = await mcp.callTool({
name: "symbl_ai-post-formatted-transcript",
arguments: {
conversationId: "Conversation Id",
contentType: "Content Type",
},
})# access_token: mint a short-lived token with the Connect SDK — see the MCP guide
headers = {
"Authorization": f"Bearer {access_token}",
"x-pd-project-id": "{project_id}",
"x-pd-environment": "production",
"x-pd-external-user-id": "{external_user_id}", # any stable ID for this user in your system
"x-pd-app-slug": "symbl_ai",
}
async with streamablehttp_client("https://remote.mcp.pipedream.net/v3", headers=headers) as (read, write, _):
async with ClientSession(read, write) as session:
await session.initialize()
tools = await session.list_tools()
# e.g. run Create Formatted Transcript:
result = await session.call_tool("symbl_ai-post-formatted-transcript", {
"conversationId": "Conversation Id",
"contentType": "Content Type",
})API PROXY
Call the Symbl.ai API directly
For an endpoint with no pre-built tool, the Connect proxy forwards your request to the Symbl.ai API with the connected user's credentials attached. You store no tokens and write no refresh logic.
const resp = await pd.proxy.get({
externalUserId: "{external_user_id}", // any stable ID for this user in your system
accountId: "apn_xxxxxxx",
url: "https://api.symbl.ai/v1/manage/trackers",
})
// Any allowed Symbl.ai endpoint works here. Pipedream attaches the
// connected account's credentials to the outgoing request.# The path segment is the target URL, URL-safe base64 encoded:
# https://api.symbl.ai/v1/manage/trackers
curl "https://api.pipedream.com/v1/connect/{project_id}/proxy/aHR0cHM6Ly9hcGkuc3ltYmwuYWkvdjEvbWFuYWdlL3RyYWNrZXJz?external_user_id={external_user_id}&account_id=apn_xxxxxxx" \
-H "Authorization: Bearer {access_token}" \
-H "x-pd-environment: production"SDK
Run Symbl.ai actions from your backend
Connect a user's Symbl.ai account once, then run Create Formatted Transcript on their behalf from your own code — TypeScript, Python, or plain HTTP.
import { PipedreamClient } from "@pipedream/sdk"
const pd = new PipedreamClient({
projectId: process.env.PIPEDREAM_PROJECT_ID!,
clientId: process.env.PIPEDREAM_CLIENT_ID!,
clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
projectEnvironment: "production",
})
const result = await pd.actions.run({
id: "symbl_ai-post-formatted-transcript",
externalUserId: "{external_user_id}", // any stable ID for this user in your system
configuredProps: {
symbl_ai: { authProvisionId: "apn_xxxxxxx" },
conversationId: "Conversation Id",
contentType: "Content Type",
},
})from pipedream import Pipedream
pd = Pipedream(
client_id="{oauth_client_id}",
client_secret="{oauth_client_secret}",
project_id="{project_id}",
project_environment="production",
)
result = pd.actions.run(
id="symbl_ai-post-formatted-transcript",
external_user_id="{external_user_id}", # any stable ID for this user in your system
configured_props={
"symbl_ai": {"authProvisionId": "apn_xxxxxxx"},
"conversationId": "Conversation Id",
"contentType": "Content Type",
},
)curl -X POST https://api.pipedream.com/v1/connect/{project_id}/actions/run \
-H "Content-Type: application/json" \
-H "X-PD-Environment: production" \
-H "Authorization: Bearer {access_token}" \
-d '{
"external_user_id": "{external_user_id}",
"id": "symbl_ai-post-formatted-transcript",
"configured_props": {
"symbl_ai": { "authProvisionId": "apn_xxxxxxx" },
"conversationId": "Conversation Id",
"contentType": "Content Type"
}
}'TOOLS
Symbl.ai actions
On-demand operations your product or agent can configure and run on behalf of a connected user.
-
Create Formatted Transcript
actionCreate formatted transcript from the Conversation. See the doc here.Writev0.0.4 -
Delete Conversation
actionPermanently deletes the conversation and all related entities such as messages, insights, topics, etc. See the doc here.Writev0.0.4 -
Get Action Items
actionGet a list of all the action items generated from the conversation. See the doc hereRead-onlyv0.0.4 -
Get Analytics
actionGet a list of metrics and member analytics (speaker ratio, talk time, silence, pace and overlap) from the conversation. See the doc hereRead-onlyv0.0.4 -
Get Conversation
actionGet the conversation metadata (meeting name, member(s) name, member(s) email, start and end time, meeting type and meeting Id). See the doc hereWritev0.0.4 -
Get Conversations
actionGet a list of all conversations. See the doc hereRead-onlyv0.0.4 -
Get Entities
actionGet a list of the extracted entities (custom, location, person, date, number, organization, datetime, daterange etc.) from the conversation. See the doc hereRead-onlyv0.0.4 -
Get Follow-Ups
actionGet a list of all the follow-ups generated from the conversation. See the doc hereWritev0.0.4 -
Get Job Status
actionGet the status of an Async job request. See the doc hereWritev0.0.5 -
Get Members
actionGet a list of all the members from the conversation. See the doc here.Read-onlyv0.0.4 -
Get Questions
actionGet a list of requests for information or explicit questions recognized during the conversation. See the doc hereRead-onlyv0.0.4 -
Get Speech to Text
actionGet a list of all the messages in a conversation. See the doc hereRead-onlyv0.0.4 -
Get Summary
actionGet a summary of important contextual messages in a conversation. See the doc hereRead-onlyv0.0.4 -
Get Topics
actionGet a list of all the topics generated from the conversation. See the doc hereRead-onlyv0.0.4 -
Get Trackers
actionGet a list of the detected trackers in the conversation. See the doc here.Read-onlyv0.0.4 -
List Conversation Id Options
actionRetrieves available options for the Conversation Id field.Read-onlyv0.0.1 -
Submit Audio URL
actionSubmit an Audio file by providing the URL for processing. See the doc here.Writev0.0.6 -
Submit Trackers and Analytics Summary User Interface
actionThe Trackers and Analytics Summary UI provides users the ability to interact with the Symbl elements (Transcripts, Questions, Follow-Ups, Action Items, etc.) from a audio conversation. See the doc here.Writev0.0.5 -
Submit Video Summary User Interface
actionThe Video Summary UI provides users the ability to interact with the Symbl elements (Transcripts, Questions, Follow-Ups, Action Items, etc.) from a video conversation. See the doc hereWritev0.0.6 -
Submit Video URL
actionSubmit a Video file by providing the URL for processing. See the doc here.Writev0.0.10 -
Update Conversation
actionUpdate an existing Conversation object with metadata information. See the doc here.Writev0.0.4 -
Update Member
actionUpdate an existing Conversation Member object. See the doc here.Writev0.0.4 -
Update Speaker Events
actionUpdate the Speaker Events of the Conversation. See the doc here.Writev0.0.5
EVENTS
Symbl.ai triggers
Event sources your backend can deploy for users and receive through a webhook.
No Symbl.ai triggers are available yet.
- App slug
- symbl_ai
- Authentication
- OAuth
- Categories
- Artificial Intelligence (AI)
- Actions
- 23
- Triggers
- 0
- API proxy
- Available