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 transcription content and its ID for use in workflows or display.
    • Note: Requires the AI Assist add-on to be enabled on your Aircall account.

✏️ 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 Jan 5, 2026 1:58pm

@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({$, callId, ...}) method in the Aircall app adapter that requests /v1/calls/{call_id}/transcription and returns the transcription object.

Changes

Cohort / File(s) Change Summary
Aircall App Adapter
components/aircall/aircall.app.mjs
Added public method retrieveTranscription({$, callId, ...args}) that calls _makeRequest with path calls/{callId}/transcription, forwarding $ and additional args to fetch transcription data.
Aircall Retrieve Transcription Action
components/aircall/actions/retrieve-transcription/retrieve-transcription.mjs
New action module exporting metadata (name, key, version, annotations, type), props (app and call via propDefinition), and async run({ $ }) that invokes the app method using the call's ID, exports a summary referencing the transcription ID, and returns the transcription object.

Sequence Diagram(s)

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

  rect rgb(230,245,255)
    Runner->>App: retrieveTranscription({$, callId})
  end

  rect rgb(245,255,230)
    App->>API: GET /v1/calls/{callId}/transcription
    API-->>App: 200 OK (transcription payload)
  end

  rect rgb(255,250,230)
    App-->>Runner: transcription object
    Runner->>Runner: exportSummary(transcription.id)
  end
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

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 for retrieving call transcriptions.
Description check ✅ Passed The description is minimal but adequately references the linked issue (#19508) that provides full context for the change.
Linked Issues check ✅ Passed The implementation successfully addresses all coding requirements from issue #19508: adds the retrieve transcription action, uses the correct API endpoint, and implements proper Aircall app integration [#19508].
Out of Scope Changes check ✅ Passed All changes are focused on implementing the retrieve transcription action and supporting app method, with no extraneous modifications beyond the linked issue scope.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
  • 📝 Generate docstrings

📜 Recent review details

Configuration used: Organization UI

Review profile: ASSERTIVE

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 79d081d and b3b0f67.

📒 Files selected for processing (2)
  • components/aircall/actions/retrieve-transcription/retrieve-transcription.mjs
  • components/aircall/aircall.app.mjs
🧰 Additional context used
🧠 Learnings (1)
📚 Learning: 2025-09-15T22:01:17.593Z
Learnt from: GTFalcao
Repo: PipedreamHQ/pipedream PR: 18362
File: components/leonardo_ai/README.md:45-49
Timestamp: 2025-09-15T22:01:17.593Z
Learning: In Leonardo AI components (and likely other Pipedream components), prefer using info alert props on the component itself rather than detailed "Key Features" sections in README files for action documentation.

Applied to files:

  • components/aircall/actions/retrieve-transcription/retrieve-transcription.mjs
🔇 Additional comments (5)
components/aircall/aircall.app.mjs (1)

152-158: LGTM! Implementation follows established patterns.

The method correctly implements the transcription retrieval by delegating to _makeRequest with the appropriate path and parameters. The implementation is consistent with similar methods like getCall and listCalls.

components/aircall/actions/retrieve-transcription/retrieve-transcription.mjs (4)

1-1: LGTM! Import path is correct.

The import correctly references the Aircall app file two levels up from the action directory.


3-14: LGTM! Metadata is well-defined.

The action metadata is comprehensive and follows Pipedream conventions. The description properly documents the AI Assist prerequisite, addressing previous review feedback.


15-23: LGTM! Props are correctly configured.

The props properly reference the app and reuse the call propDefinition from the app file, which will provide users with a dropdown to select from available calls.


24-37: No issues found. The code correctly assumes the Aircall API response structure { transcription: {...} } and the transcription.id field exists in the response, as confirmed by the official Aircall API documentation.


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.

@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

…nscription.mjs

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
@lcaresia lcaresia self-assigned this Dec 30, 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.

Hey @phum-athiphum, thanks for contribute. Have some lint errors to fix,, can you fix and move to review again?

@phum-athiphum
Copy link
Author

Hi @lcaresia,sorry for the delay 🙏 I’m currently traveling abroad. I’ll fix the lint errors and update the PR by 2/1/2026.
Thanks for your patience!

@phum-athiphum phum-athiphum requested a review from lcaresia January 2, 2026 07:30
lcaresia
lcaresia previously approved these changes Jan 5, 2026
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.

Hey, thanks for your contribution.

LGTM, but have some improves to do. Moving to QA

…nscription.mjs

Co-authored-by: Lucas Caresia <lucascarezia@gmail.com>
phum-athiphum and others added 2 commits January 5, 2026 20:58
Co-authored-by: Lucas Caresia <lucascarezia@gmail.com>
…nscription.mjs

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

@lcaresia Thanks for the suggestion! I’ve updated the code accordingly. Appreciate the review.

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