What Object Should I Call to Associate a Ticket with a Company in Hubspot?

This topic was automatically generated from Slack. You can find the original thread here.

I am sending Hubspot Create ticket request. and it gets created, but I need to associate ticket with the company in the hubspot. What object should i call to get it done

To associate a ticket with a company in HubSpot, you’ll need to use the HubSpot Associations API. This API allows you to create associations between different objects in HubSpot, such as tickets and companies. While the specific endpoint and request body may vary based on your exact requirements, here’s a general approach using Pipedream component code to achieve this: import { axios } from "@pipedream/platform"; export default defineComponent({ props: { hubspot: { type: "app", app: "hubspot", }, }, async run({ steps, $ }) { // Assuming you already have the ticketId and companyId const ticketId = "YOUR_TICKET_ID"; const companyId = "YOUR_COMPANY_ID"; // Define the association type // For ticket to company association, the definitionId is 25 // See HubSpot documentation for other association types const definitionId = 25; // Ticket to Company const url = `https://api.hubapi.com/crm/v3/objects/tickets/${ticketId}/associations/companies/${companyId}/${definitionId}`; return await axios($, { method: "PUT", url: url, headers: { Authorization: `Bearer ${this.hubspot.$auth.oauth_access_token}`, "Content-Type": "application/json", }, }); }, }); This code snippet assumes you have the ticketId and companyId available. You need to replace "YOUR_TICKET_ID" and "YOUR_COMPANY_ID" with the actual IDs of the ticket and company you wish to associate. The definitionId for associating a ticket with a company is 25, according to HubSpot’s documentation on association types. Please note, this example uses the CRM Associations API endpoint format as per HubSpot’s API documentation. The actual implementation might require adjustments based on your specific use case and HubSpot’s API changes. For more detailed information on the Associations API and other possible association types, please refer to the official HubSpot API documentation.

steps.find_meeting_by_id
{2}
$summary
Successfully found meeting with ID: RBQB5spW6vw2aZ6n
$return_value
{2}
errors
[1]
Copy Path
•
Copy Value
0
{6}
friendly:
true
message
You need to be subscribed to a business or higher plan to perform this action
locations
[1]
path
[2]
0:
transcript
1:
video_url
code:
paid_required
extensions
{4}
code:
paid_required
status:
403
metadata
{1}
tier:
business_or_higher
correlationId:
hZVrLoI0
data
{1}
transcript
{11}
id:
RBQB5spW6vw2aZ6n
title:
Sóvári Gergely and Stefan Trbojevic
transcript_url:
https://app.fireflies.ai/view/RBQB5spW6vw2aZ6n
duration:
37
date:
1713787200000
audio_url
https://rtmp-server-ff.s3.amazonaws.com/RBQB5spW6vw2aZ6n/audio.mp3?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAWZAJLUBIVRJ35B6I%2F20240426%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20240426T112542Z&X-Amz-Expires=216000&X-Amz-Signature=1f85de87e85652ac47e2b1ee0e33da668487c9ee17780ca158ce379698ca1b11&X-Amz-SignedHeaders=host
video_url:
null
sentences
[417]
calendar_id:
la265h2qvl4dj3fhk0065h7pv8
summary
{5}
action_items
****Stefan Trbojevic**** Follow up on pricing tools and automation options discussed in the meeting and finalize the details for potential discounts and better pricing for [automata.com](http://automata.com). Schedule a meeting to discuss further on Thursday (36:46)
keywords
[6]
0:
Stefan Trbojevic
1:
Gergely Sóvári
2:
guest communication
3:
automations
4:
integration
5:
pricing.
outline
Chapter 1: Guest Communication and Integration (00:38 - 06:35) 00:52: Discussion on guest communication via API integrations with channels. 01:53: Process of integrating new apartments through Tokit without manual creation on channels. Chapter 2: Automations and Triggers (03:35 - 07:14) 04:48: Explanation of setting triggers for automations, like actions for booking confirmations. 05:08: Utilizing HTTP requests to Zapier for handling bookings. Chapter 3: Billing and Automation Tools (09:13 - 13:37) 10:10: Billing for channel bookings and collecting payments through Stripe. 11:13: Automating post-reservation guest POS and checking instructions. Chapter 4: Scheduling and Follow-up (28:22 - 37:18) 29:25: Scheduling a follow-up call after initial discussion. 30:19: Sending an invitation for a future meeting and gathering additional information. 36:51: Plan to reconnect on Thursday for further discussions.
overview
****Gergely Sóvári**** is considering switching from Guesty to ****Keith**** due to issues like double bookings and high costs with Guesty. They discuss ****Tokit**** features including guest communication, adding new properties, and automations. Gergely inquires about advanced automations for check-in/checkout processes and related costs, with a focus on ****Stripe integration**** for payment automation and billing guests. They also address Hungary's government-mandated guest data registration solutions within Tokit, discussing pricing algorithms integrated with Tokit such as Wheelhouse, Price Labs, and Rate Genie. The conversation extends to potential integrations within Tokit for Hungary's government-mandated guest data registration. They dwell on pricing algorithms like Wheelhouse, Price Labs, and Rate Genie connected with ****Tokit****. ****Gergely**** shows interest in advanced automations for the check-in/checkout process, with a specific emphasis on ****Stripe integration**** for payment automation. The meeting concludes with plans for further discussions on integration possibilities aligned with Gergely's needs, with a follow-up session scheduled to explore detailed pricing options and potential implementations tailored to optimize operations effectively on Thursday.
shorthand_bullet
📊 ****Guest Communication from Tokit**** - ****Guest communication can be done with all guests from any API integration with channels.**** - Communication includes platforms like booking and RBMB. 🔄 ****Basic Automations**** - ****Automations can be triggered by actions like confirming a booking.**** - Actions include sending email messages, HTTP requests, and push notifications. 💳 ****Automated Guest Billing**** - ****Discussion on automating the guest receipt process from Tokit.**** - Gergely Sóvári inquired about automating guest billing. 🗓️ ****Scheduling Next Meeting**** - ****Proposed scheduling another video call for the upcoming week.**** - Planning to connect after Gergely Sóvári's meeting on Wednesday.
user
{2}

I need to make this output in readable format and save it as a google document, can you format it for me so the sentance object is visible?

To format the provided output in a readable format and prepare it for saving as a Google document, focusing on making the sentences object visible, you can follow this structure: ```markdown # Meeting Summary Meeting ID: RBQB5spW6vw2aZ6n Title: Sóvári Gergely and Stefan Trbojevic Transcript URL: Sóvári Gergely and Stefan Trbojevic - Meeting recording by Fireflies.ai Duration: 37 minutes Date: 1713787200000 Audio URL: Audio Link Video URL: null Calendar ID: la265h2qvl4dj3fhk0065h7pv8 ## Action Items - Stefan Trbojevic: Follow up on pricing tools and automation options discussed in the meeting and finalize the details for potential discounts and better pricing for automata.com. Schedule a meeting to discuss further on Thursday (36:46). ## Keywords - Stefan Trbojevic - Gergely Sóvári - guest communication - automations - integration - pricing ## Outline ### Chapter 1: Guest Communication and Integration (00:38 - 06:35) - 00:52: Discussion on guest communication via API integrations with channels. - 01:53: Process of integrating new apartments through Tokit without manual creation on channels. ### Chapter 2

Hey i need a code that will parse the results into readable format so I can put it to google docs in the next step.

steps.find_meeting_by_id
{2}
$summary:
Successfully found meeting with ID: i2Zr2k5033wKIm9F

$return_value
{2}

errors
[1]

data
{1}

transcript
{11}
id:
i2Zr2k5033wKIm9F
title:
kerry maclean and Stefan Trbojevic
transcript_url:
https://app.fireflies.ai/view/i2Zr2k5033wKIm9F
duration:
16
date:
1712577600000

audio_url
https://rtmp-server-ff.s3.amazonaws.com/i2Zr2k5033wKIm9F/audio.mp3?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAWZAJLUBIVRJ35B6I%2F20240426%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20240426T115401Z&X-Amz-Expires=216000&X-Amz-Signature=7e799fb583f126b750242afb83a171d0e823577f3c97f261c13116d979405dbb&X-Amz-SignedHeaders=host
video_url:
null

sentences
[13]

0
{1}
text:
It.

1
{1}
text:
It.

2
{1}
text:
It.

3
{1}
text:
It.

4
{1}
text:
It.

5
{1}
text:
It.

6
{1}
text:
It.

7
{1}

8
{1}
text:
It.

9
{1}
text:
It.

10
{1}
text:
It.

11
{1}
text:
It.

12
{1}
text:
It.
calendar_id:
4mt3hdd1todmkfgtp22fcp6n8s

summary
{5}

action_items
Kerry Maclean Follow up on the unresolved issues discussed in the meeting (00:25) Stefan Trbojevic Review the action items identified in the meeting and ensure they are completed in a timely manner (00:25)

keywords
[6]
0:
time
1:
sentence
2:
repetition
3:
monotony
4:
unspecified
5:
intervals

outline
Chapter 1: Introduction and Overview (00:25 - 14:57) 00:25: The beginning of the discussion or presentation. 02:07: Continuation of the main topic. 04:16: Progressing further into the subject matter. 05:07: Key points being reiterated. 07:16: Further elaboration on the topic. 08:33: Continuing the discussion. 09:24: More information or details shared. 11:32: Advancing towards a specific point. 11:58: Continuing to delve into the topic. 12:23: Further emphasis on the main subject. 13:40: Development or clarification of the main idea. 14:32: Progression towards concluding remarks. 14:57: Conclusion or summary of the discussion.

overview
The meeting, centered around a singular topic known as “It”, delved into various aspects and perspectives on the subject, suggesting a comprehensive review. Throughout the discussion, multiple detailed points were raised, hinting at an in-depth analysis or exploration. Participants exchanged ideas and potentially conflicting viewpoints on “It”, indicating a collaborative dialogue among them. The recurrent use of “It” throughout the meeting signifies the topic’s centrality, emphasizing its importance in the participants’ discussions. The continual reference to “It” without additional context implies a shared understanding among all attendees, suggesting a collective knowledge about the subject matter. This consistent focus on “It” without further elaboration implies a high level of familiarity and mutual comprehension among the meeting participants.

shorthand_bullet
:calendar: Meeting Summary - It was discussed multiple times throughout the meeting, with no specific details provided. - It was a recurring topic of conversation among the participants. - It seemed to be a central point of focus during the meeting.

user
{2}
user_id:
D06VhnEPF7
name:
Stefan Trbojevic

To parse the results from the steps.find_meeting_by_id step and prepare them for insertion into a Google Docs document, you can use the following Pipedream component code. This code will format the meeting details, including the transcript, action items, and outline, into a readable format suitable for Google Docs. import { axios } from "@pipedream/platform"; export default defineComponent({ props: { google: { type: "app", app: "google", }, }, async run({ steps, $ }) { const meetingDetails = steps.find_meeting_by_id; const transcript = meetingDetails.data.transcript.sentences.map(sentence => sentence.text).join(" "); const actionItems = meetingDetails.summary.action_items; const outline = meetingDetails.outline; const formattedText = ` Meeting ID: ${meetingDetails.data.transcript.id} Title: ${meetingDetails.data.transcript.title} Transcript URL: ${meetingDetails.data.transcript.transcript_url} Duration: ${meetingDetails.data.transcript.duration} minutes Date: ${new Date(meetingDetails.data.transcript.date).toLocaleDateString()} Audio URL: ${meetingDetails.data.transcript.audio_url} Transcript: ${transcript} Action Items: ${actionItems} Outline: ${outline} `; // Example of making a request to Google Docs API to insert the formattedText // You'll need to replace 'DOCUMENT_ID' with your actual Google Docs document ID // and ensure you have the correct scopes and permissions set up in your Google app on Pipedream return await axios($, { method: "POST", url: `https://docs.googleapis.com/v1/documents/DOCUMENT_ID:batchUpdate`, headers: { Authorization: `Bearer ${this.google.$auth.oauth_access_token}`, }, data: { requests: [ { insertText: { location: { index: 1, }, text: formattedText, }, }, ], }, }); }, }); This code snippet does the following: 1. Extracts and formats the meeting details from the steps.find_meeting_by_id step. 2. Constructs a formatted text string that includes the meeting ID, title, transcript URL, duration, date, audio URL, transcript, action items, and outline. 3. Makes a POST request to the Google

i dont need actual code for google doc, i just need 2. Constructs a formatted text string that includes the meeting ID, title, transcript URL, duration, date, audio URL, transcript, action items, and outline.

Based on your request, it seems you’re looking for guidance on structuring data rather than specific code to interact with Google Docs. Given that, here’s a structured approach to constructing a formatted text string with the specified elements: ```
markdown Meeting Summary: - Meeting ID: 12345 - Title: Weekly Team Meeting - Transcript URL: Click here - Duration: 60 minutes - Date: 2023-01-01 - Audio URL: Listen here - Transcript: > Here’s a brief excerpt from the meeting transcript… - Action Items: 1. Complete the project proposal by Friday. 2. Schedule a follow-up meeting for project review. - Outline: - Introduction - Project Updates - Challenges and Solutions - Next Steps

No i just need half of the code, 2. Constructs a formatted text string that includes the meeting ID, title, transcript URL, duration, date, audio URL, transcript, action items, and outline.

Based on your request, it seems you’re looking to construct a formatted text string that includes various details about a meeting. While you haven’t specified the source of this data, I’ll assume you have access to these details in the context of a Pipedream workflow. Here’s a Node.js code snippet that constructs such a string. This example assumes you’re fetching meeting details from an API or another source within your Pipedream workflow and that these details are available in the steps object. export default defineComponent({ async run({ steps, $ }) { // Example data structure for meeting details // Replace the values from `steps.your_step_name.data` with your actual step and data const meetingDetails = { meetingID: "123456", title: "Weekly Team Meeting", transcriptURL: "https://example.com/transcript", duration: "60 minutes", date: "2023-01-01", audioURL: "https://example.com/audio", transcript: "Meeting transcript goes here...", actionItems: ["Item 1", "Item 2"], outline: ["Introduction", "Project Updates", "Q&A"] }; // Constructing the formatted text string const formattedString = ` Meeting ID: ${meetingDetails.meetingID} Title: ${meetingDetails.title} Transcript URL: ${meetingDetails.transcriptURL} Duration: ${meetingDetails.duration} Date: ${meetingDetails.date} Audio URL: ${meetingDetails.audioURL} Transcript: ${meetingDetails.transcript} Action Items: ${meetingDetails.actionItems.join(", ")} Outline: ${meetingDetails.outline.join(", ")} `; // Returning the formatted string return formattedString; }, }) This code snippet defines a Pipedream component that constructs a formatted text string with meeting details. You’ll need to replace the placeholder meetingDetails object with the actual data from your workflow. If the meeting details are coming from an API call or another step in your workflow, you can access that data using steps.your_step_name.data where your_step_name is the name of the step that contains the meeting details. Remember, this is a basic example to get you started. Depending on the complexity of your data and requirements, you might need to adjust the code accordingly.

Use these instead
async run({ steps, $ }) {
const meetingDetails = steps.find_meeting_by_id;
const transcript = meetingDetails.data.transcript.sentences.map(sentence => sentence.text).join(" ");
const actionItems = meetingDetails.summary.action_items;
const outline = meetingDetails.outline;

**const** formattedText = `

Meeting ID: ${meetingDetails.data.transcript.id}
Title: ${meetingDetails.data.transcript.title}
Transcript URL: ${meetingDetails.data.transcript.transcript_url}
Duration: ${meetingDetails.data.transcript.duration} minutes
Date: ${new Date(meetingDetails.data.transcript.date).toLocaleDateString()}
Audio URL: ${meetingDetails.data.transcript.audio_url}

Transcript: ${transcript}

Action Items: ${actionItems}

Outline: ${outline}
`;

 export default defineComponent({   async run({ steps, $ }) {     const meetingDetails = steps.find_meeting_by_id;     const transcript = meetingDetails.data.transcript.sentences.map(sentence => sentence.text).join(" ");     const actionItems = meetingDetails.summary.action_items;     const outline = meetingDetails.outline;      const formattedText = ` Meeting ID: ${meetingDetails.data.transcript.id} Title: ${meetingDetails.data.transcript.title} Transcript URL: ${meetingDetails.data.transcript.transcript_url} Duration: ${meetingDetails.data.transcript.duration} minutes Date: ${new Date(meetingDetails.data.transcript.date).toLocaleDateString()} Audio URL: ${meetingDetails.data.transcript.audio_url}  Transcript: ${transcript}  Action Items: ${actionItems}  Outline: ${outline}     `;     return formattedText;   }, }); 

I need to construct formated output from the response that i have. the output should be plain text, that should contain everything from the reponse.

steps.find_meeting_by_id
{2}
$summary:
Successfully found meeting with ID: i2Zr2k5033wKIm9F

$return_value
{2}

errors
[1]

data
{1}

transcript
{11}
id:
i2Zr2k5033wKIm9F
title:
kerry maclean and Stefan Trbojevic
transcript_url:
https://app.fireflies.ai/view/i2Zr2k5033wKIm9F
duration:
16
date:
1712577600000

audio_url
https://rtmp-server-ff.s3.amazonaws.com/i2Zr2k5033wKIm9F/audio.mp3?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIAWZAJLUBIVRJ35B6I%2F20240426%2Fus-east-1%2Fs3%2Faws4_request&X-Amz-Date=20240426T115401Z&X-Amz-Expires=216000&X-Amz-Signature=7e799fb583f126b750242afb83a171d0e823577f3c97f261c13116d979405dbb&X-Amz-SignedHeaders=host
video_url:
null

sentences
[13]

0
{1}
text:
It.

1
{1}
text:
It.

2
{1}
text:
It.

3
{1}
text:
It.

4
{1}
text:
It.

5
{1}
text:
It.

6
{1}
text:
It.

7
{1}

8
{1}
text:
It.

9
{1}
text:
It.

10
{1}
text:
It.

11
{1}
text:
It.

12
{1}
text:
It.
calendar_id:
4mt3hdd1todmkfgtp22fcp6n8s

summary
{5}

action_items
Kerry Maclean Follow up on the unresolved issues discussed in the meeting (00:25) Stefan Trbojevic Review the action items identified in the meeting and ensure they are completed in a timely manner (00:25)

keywords
[6]
0:
time
1:
sentence
2:
repetition
3:
monotony
4:
unspecified
5:
intervals

outline
Chapter 1: Introduction and Overview (00:25 - 14:57) 00:25: The beginning of the discussion or presentation. 02:07: Continuation of the main topic. 04:16: Progressing further into the subject matter. 05:07: Key points being reiterated. 07:16: Further elaboration on the topic. 08:33: Continuing the discussion. 09:24: More information or details shared. 11:32: Advancing towards a specific point. 11:58: Continuing to delve into the topic. 12:23: Further emphasis on the main subject. 13:40: Development or clarification of the main idea. 14:32: Progression towards concluding remarks. 14:57: Conclusion or summary of the discussion.

overview
The meeting, centered around a singular topic known as “It”, delved into various aspects and perspectives on the subject, suggesting a comprehensive review. Throughout the discussion, multiple detailed points were raised, hinting at an in-depth analysis or exploration. Participants exchanged ideas and potentially conflicting viewpoints on “It”, indicating a collaborative dialogue among them. The recurrent use of “It” throughout the meeting signifies the topic’s centrality, emphasizing its importance in the participants’ discussions. The continual reference to “It” without additional context implies a shared understanding among all attendees, suggesting a collective knowledge about the subject matter. This consistent focus on “It” without further elaboration implies a high level of familiarity and mutual comprehension among the meeting participants.

shorthand_bullet
:calendar: Meeting Summary - It was discussed multiple times throughout the meeting, with no specific details provided. - It was a recurring topic of conversation among the participants. - It seemed to be a central point of focus during the meeting.

user
{2}
user_id:
D06VhnEPF7
name:
Stefan Trbojevic

To construct a formatted plain text output from the response you’ve provided, you can use a template literal in JavaScript to format the data as needed. Here’s an example of how you might structure this output: ``` const summary = Successfully found meeting with ID: i2Zr2k5033wKIm9F; const meetingDetails = ` Meeting ID: i2Zr2k5033wKIm9F Title: kerry maclean and Stefan Trbojevic Transcript URL: kerry maclean and Stefan Trbojevic - Meeting recording by Fireflies.ai Duration: 16 minutes Date: ${new Date(1712577600000).toLocaleDateString()} Audio URL: https://rtmp-server-ff.s3.amazonaws.com/i2Zr2k5033wKIm9F/audio.mp3 Video URL: null Sentences: - It. - It. - It. - It. - It. - It. - It. - It. - It. - It. - It. - It. - It. Calendar ID: 4mt3hdd1todmkfgtp22fcp6n8s Summary: Action Items: - Kerry Maclean Follow up on the unresolved issues discussed in the meeting (00:25) - Stefan Trbojevic Review the action items identified in the meeting and ensure they are completed in a timely manner (00:25) Keywords: time, sentence, repetition, monotony, unspecified, intervals Outline: - Chapter 1: Introduction and Overview (00:25 - 14:57) - 00:25: The beginning of the discussion or presentation. - 02:07: Continuation of the main topic. - 04:16: Progressing further into the subject matter. - 05:07: Key points being reiterated. - 07:16: Further elaboration on the topic. - 08:33: Continuing the discussion. - 09:24: More information or details shared. - 11:32: Advancing towards a specific point. - 11:58: Continuing to delve into the topic. - 12:23: Further emphasis on the main subject. - 13:40: Development or clarification of the main idea. - 14:32

Yes I need a code that will structure it like that can you do that for me?
Also include the timestemps in the sentances.

To assist you effectively, could you please provide more details about the context in which you need the code? Specifically, it would be helpful to know: 1. What is the source of the data you’re working with? (e.g., API, webhook, manual input) 2. What is the exact structure you’re aiming for in your sentences? Could you provide an example sentence? 3. How are you planning to use the timestamps in the sentences? Are these current timestamps, or do they need to be extracted from your data source? 4. In which environment or platform do you intend to run this code? (e.g., within a Pipedream workflow, a specific programming language environment) This information will enable me to provide you with the most accurate and helpful code snippet.

Just do it without it

I’m sorry, but it seems like your question might be incomplete or missing some context. Could you please provide more details or clarify what specific assistance you need with Pipedream? This will help me provide you with the most accurate and helpful information.

I need something like this

export default defineComponent({
  async run({ steps, $ }) {
    const meetingDetails = steps.find_meeting_by_id;
    const transcript = meetingDetails.data.transcript.sentences.map(sentence => sentence.text).join(" ");
    const actionItems = meetingDetails.summary.action_items;
    const outline = meetingDetails.outline;

    const formattedText = `
Meeting ID: ${meetingDetails.data.transcript.id}
Title: ${meetingDetails.data.transcript.title}
Transcript URL: ${meetingDetails.data.transcript.transcript_url}
Duration: ${meetingDetails.data.transcript.duration} minutes
Date: ${new Date(meetingDetails.data.transcript.date).toLocaleDateString()}
Audio URL: ${meetingDetails.data.transcript.audio_url}

Transcript: ${transcript}

Action Items: ${actionItems}

Outline: ${outline}
    `;
    return formattedText;
  },
});

the end result should be formattedtext. that i will use in the next step of the workflow.

Based on your request, it seems you’re looking to format data from a previous step in your Pipedream workflow into a structured text format. The code snippet you provided is almost ready for use, with a minor adjustment needed for correct mapping and joining of sentences from the transcript. Here’s a refined version of your code: export default defineComponent({ async run({ steps, $ }) { // Assuming steps.find_meeting_by_id is the correct reference to your previous step data const meetingDetails = steps.find_meeting_by_id; // Ensure the mapping and joining process is correctly accessing the sentences const transcript = meetingDetails.data.transcript.sentences.map(sentence => sentence.text).join(" "); // Assuming actionItems and outline are correctly extracted from meetingDetails const actionItems = meetingDetails.data.summary.action_items.join(", "); const outline = meetingDetails.data.outline.join(", "); // Formatting the text with the extracted and processed data const formattedText = ` Meeting ID: ${meetingDetails.data.transcript.id} Title: ${meetingDetails.data.transcript.title} Transcript URL: ${meetingDetails.data.transcript.transcript_url} Duration: ${meetingDetails.data.transcript.duration} minutes Date: ${new Date(meetingDetails.data.transcript.date).toLocaleDateString()} Audio URL: ${meetingDetails.data.transcript.audio_url} Transcript: ${transcript} Action Items: ${actionItems} Outline: ${outline} `; // Returning the formatted text for use in the next step of the workflow return formattedText; }, }); Please ensure that the path to access action_items and outline in your meetingDetails object is correct, as I’ve made an assumption based on the structure you provided. If these items are nested differently within your data, you’ll need to adjust the paths accordingly. This code will take the data from the find_meeting_by_id step, format it as specified, and return the formattedText string. You can then use this string in subsequent steps of your Pipedream workflow.