Skip to content

Conversation

@phum-athiphum
Copy link

@phum-athiphum phum-athiphum commented Dec 16, 2025

WHY

Fixes #19508

Summary by CodeRabbit

  • New Features
    • Aircall integration: Added a "Retrieve Transcription" action that lets users fetch AI-generated transcriptions for specific calls, returning the transcription content and associated ID for use in workflows or display.

✏️ Tip: You can customize this high-level summary in your review settings.

@vercel
Copy link

vercel bot commented Dec 16, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Review Updated (UTC)
pipedream-docs-redirect-do-not-edit Ignored Ignored Dec 18, 2025 1:58am

@pipedream-component-development
Copy link
Collaborator

Thank you so much for submitting this! We've added it to our backlog to review, and our team has been notified.

@pipedream-component-development
Copy link
Collaborator

Thanks for submitting this PR! When we review PRs, we follow the Pipedream component guidelines. If you're not familiar, here's a quick checklist:

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Dec 16, 2025

Walkthrough

Adds a new Aircall action to retrieve AI-generated call transcriptions and a corresponding retrieveTranscription(id, $) method in the Aircall app adapter that calls the /v1/calls/{call_id}/transcription endpoint and returns the transcription object.

Changes

Cohort / File(s) Change Summary
Aircall App Adapter
components/aircall/aircall.app.mjs
Added public method retrieveTranscription(id, $) that delegates to _makeRequest with path calls/{id}/transcription to fetch transcription data.
Aircall Retrieve Transcription Action
components/aircall/actions/retrieve-transcription/retrieve-transcription.mjs
New action module exporting metadata, props (including app and call propDefinition), and an async run({ $ }) that calls this.app.retrieveTranscription(this.call, $), exports a summary with the transcription ID, and returns the transcription object.

Sequence Diagram(s)

sequenceDiagram
  participant Runner as Action Runner
  participant App as Aircall App Adapter
  participant API as Aircall API

  Runner->>App: retrieveTranscription(callId, $)
  App->>API: GET /v1/calls/{callId}/transcription
  API-->>App: 200 OK (transcription payload)
  App-->>Runner: transcription object
  Runner->>Runner: exportSummary(transcription.id)
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

  • Review focus areas:
    • Confirm endpoint path and HTTP method match Aircall docs (/v1/calls/{call_id}/transcription, GET)
    • Validate prop definition for call references the app's prop correctly
    • Ensure consistent error handling and request options with existing adapter methods (_makeRequest)
    • Verify the action's exported summary and returned object shape match expected downstream usage (transcription ID presence)

Pre-merge checks and finishing touches

✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately and concisely describes the main change: adding an Aircall action to retrieve call transcriptions, which matches the implementation in the PR.
Description check ✅ Passed The description is minimal but sufficient, providing the linked issue reference (#19508) that explains the full requirements and context for this implementation.
Linked Issues check ✅ Passed The PR successfully implements the Aircall transcription retrieval action, adding the required method to the Aircall app and creating the action module that calls the API endpoint [#19508].
Out of Scope Changes check ✅ Passed All changes are directly related to implementing the transcription retrieval action as specified in the linked issue; no extraneous modifications were introduced.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@s0s0physm s0s0physm added the triaged For maintainers: This issue has been triaged by a Pipedream employee label Dec 16, 2025
lcaresia
lcaresia previously approved these changes Dec 17, 2025
Copy link
Collaborator

@lcaresia lcaresia left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@lcaresia lcaresia moved this from Ready for PR Review to Ready for QA in Component (Source and Action) Backlog Dec 17, 2025
refactor(aircall): align retrieve transcription action with app conventions

Co-authored-by: Lucas Caresia <lucascarezia@gmail.com>
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

📜 Review details

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 7e38917 and 90e1df6.

📒 Files selected for processing (1)
  • components/aircall/actions/retrieve-transcription/retrieve-transcription.mjs (1 hunks)
🔇 Additional comments (3)
components/aircall/actions/retrieve-transcription/retrieve-transcription.mjs (3)

1-2: LGTM: Import follows Pipedream conventions.

The import statement correctly references the Aircall app module using the appropriate relative path for the action's location in the directory structure.


3-22: LGTM: Component structure follows Pipedream guidelines.

The component metadata, annotations, and props are well-defined:

  • The key follows the required pattern (aircall-retrieve-transcription)
  • Annotations correctly indicate this is a non-destructive, read-only action
  • Props structure properly references the app and uses propDefinition for the call parameter

23-29: Verify that the Aircall API transcription response includes an id field.

Line 26 uses transcription.id in the summary message, but the Aircall transcription API response schema is not documented in this codebase. Confirm with Aircall's API documentation or test data that the response includes an id field; otherwise, the summary will display undefined.


export default {
name: "Retrieve Transcription",
description: "Retrieves AI-generated transcription for a specific Aircall call. [See the docs here](https://developer.aircall.io/api-references/#retrieve-a-transcription)",
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick | 🔵 Trivial

Consider documenting the AI Assist prerequisite.

The PR objectives note that "AI Assist add-on must be enabled on the Aircall account" for this feature to work. Consider adding this requirement to the description to help users understand prerequisites upfront.

🔎 Suggested description enhancement:
-    description: "Retrieves AI-generated transcription for a specific Aircall call. [See the docs here](https://developer.aircall.io/api-references/#retrieve-a-transcription)",
+    description: "Retrieves AI-generated transcription for a specific Aircall call. Requires the AI Assist add-on to be enabled on your Aircall account. [See the docs here](https://developer.aircall.io/api-references/#retrieve-a-transcription)",
📝 Committable suggestion

‼️ IMPORTANT
Carefully review the code before committing. Ensure that it accurately replaces the highlighted code, contains no missing lines, and has no issues with indentation. Thoroughly test & benchmark the code to ensure it meets the requirements.

Suggested change
description: "Retrieves AI-generated transcription for a specific Aircall call. [See the docs here](https://developer.aircall.io/api-references/#retrieve-a-transcription)",
description: "Retrieves AI-generated transcription for a specific Aircall call. Requires the AI Assist add-on to be enabled on your Aircall account. [See the docs here](https://developer.aircall.io/api-references/#retrieve-a-transcription)",
🤖 Prompt for AI Agents
In components/aircall/actions/retrieve-transcription/retrieve-transcription.mjs
around line 5, the action description omits the prerequisite that the Aircall
account must have the AI Assist add-on enabled; update the description string to
explicitly state that AI Assist must be enabled on the Aircall account for this
feature to work, phrasing it succinctly (e.g., append "Requires the Aircall AI
Assist add-on to be enabled on the account.") and keep the existing docs link
intact.

@vunguyenhung vunguyenhung moved this from Ready for QA to Ready for Release in Component (Source and Action) Backlog Dec 18, 2025
@vunguyenhung
Copy link
Collaborator

Hi everyone, all test cases are passed! Ready for release!

Test reports

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

triaged For maintainers: This issue has been triaged by a Pipedream employee User submitted Submitted by a user

Projects

Status: Ready for Release

Development

Successfully merging this pull request may close these issues.

[ACTION] Aircall - Retrieve Transcription

6 participants