CONNECT APP
Build with Palatine Speech
Artificial Intelligence (AI)
- API key
MCP
Give your agent Palatine Speech tools
Every Palatine Speech 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 Palatine Speech 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": "palatine_speech",
},
},
},
)
const mcp = new Client({ name: "my-agent", version: "1.0.0" })
await mcp.connect(transport)
const { tools } = await mcp.listTools()
// e.g. run Download Transcription:
const result = await mcp.callTool({
name: "palatine_speech-download-transcription",
arguments: {
taskId: "Task ID",
fileFormat: "File Format",
},
})# 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": "palatine_speech",
}
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 Download Transcription:
result = await session.call_tool("palatine_speech-download-transcription", {
"taskId": "Task ID",
"fileFormat": "File Format",
})API PROXY
Call the Palatine Speech API directly
For an endpoint with no pre-built tool, the Connect proxy forwards your request to the Palatine Speech 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.example.com/v1/me",
})
// Any allowed Palatine Speech 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.example.com/v1/me
curl "https://api.pipedream.com/v1/connect/{project_id}/proxy/aHR0cHM6Ly9hcGkuZXhhbXBsZS5jb20vdjEvbWU?external_user_id={external_user_id}&account_id=apn_xxxxxxx" \
-H "Authorization: Bearer {access_token}" \
-H "x-pd-environment: production"SDK
Run Palatine Speech actions from your backend
Connect a user's Palatine Speech account once, then run Download Transcription 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: "palatine_speech-download-transcription",
externalUserId: "{external_user_id}", // any stable ID for this user in your system
configuredProps: {
palatine_speech: { authProvisionId: "apn_xxxxxxx" },
taskId: "Task ID",
fileFormat: "File Format",
},
})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="palatine_speech-download-transcription",
external_user_id="{external_user_id}", # any stable ID for this user in your system
configured_props={
"palatine_speech": {"authProvisionId": "apn_xxxxxxx"},
"taskId": "Task ID",
"fileFormat": "File Format",
},
)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": "palatine_speech-download-transcription",
"configured_props": {
"palatine_speech": { "authProvisionId": "apn_xxxxxxx" },
"taskId": "Task ID",
"fileFormat": "File Format"
}
}'TOOLS
Palatine Speech actions
On-demand operations your product or agent can configure and run on behalf of a connected user.
-
Download Transcription
actionDownloads the transcription results in a specified file format (SRT, VTT, TXT, CSV, or XLSX). The task must be completed before downloading. See the documentationWritev0.0.2 -
Get Task Status
actionRetrieves the status and results of a transcription task. Use this to poll for completion after starting a transcription job. See the documentationRead-onlyv0.0.1 -
Mark Task Done
actionMarks a transcription task as completed and removes it from the list of active tasks. Use this to clean up resources after retrieving results. See the documentationWritev0.0.1 -
Transcribe Audio
actionStarts an asynchronous transcription job for an audio or video file. Optionally wait for completion by enabling the 'Wait for Completion' option. See the documentationWritev0.0.3
EVENTS
Palatine Speech triggers
Event sources your backend can deploy for users and receive through a webhook.
No Palatine Speech triggers are available yet.
- App slug
- palatine_speech
- Authentication
- API key
- Categories
- Artificial Intelligence (AI)
- Actions
- 4
- Triggers
- 0
- API proxy
- Available