@credal/actions 0.2.207 → 0.2.209

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- import { genericFillTemplateParamsSchema, genericFillTemplateOutputSchema, confluenceOverwritePageParamsSchema, confluenceOverwritePageOutputSchema, googlemapsValidateAddressOutputSchema, googlemapsValidateAddressParamsSchema, googleOauthCreateNewGoogleDocParamsSchema, googleOauthCreateNewGoogleDocOutputSchema, mathAddOutputSchema, mathAddParamsSchema, mongoInsertMongoDocOutputSchema, mongoInsertMongoDocParamsSchema, slackSendMessageOutputSchema, slackSendMessageParamsSchema, slackGetChannelMessagesOutputSchema, slackGetChannelMessagesParamsSchema, slackCreateChannelParamsSchema, slackCreateChannelOutputSchema, snowflakeGetRowByFieldValueOutputSchema, snowflakeGetRowByFieldValueParamsSchema, zendeskCreateZendeskTicketOutputSchema, zendeskCreateZendeskTicketParamsSchema, zendeskGetTicketDetailsOutputSchema, zendeskGetTicketDetailsParamsSchema, zendeskUpdateTicketStatusOutputSchema, zendeskUpdateTicketStatusParamsSchema, zendeskAddCommentToTicketOutputSchema, zendeskAddCommentToTicketParamsSchema, zendeskAssignTicketOutputSchema, zendeskAssignTicketParamsSchema, zendeskListZendeskTicketsOutputSchema, zendeskListZendeskTicketsParamsSchema, zendeskSearchZendeskByQueryOutputSchema, zendeskSearchZendeskByQueryParamsSchema, jiraAssignJiraTicketParamsSchema, jiraAssignJiraTicketOutputSchema, jiraCommentJiraTicketParamsSchema, jiraCommentJiraTicketOutputSchema, jiraCommentJiraTicketWithMentionsParamsSchema, jiraCommentJiraTicketWithMentionsOutputSchema, jiraCreateJiraTicketParamsSchema, jiraCreateJiraTicketOutputSchema, jiraGetJiraTicketDetailsParamsSchema, jiraGetJiraTicketDetailsOutputSchema, jiraGetJiraTicketHistoryParamsSchema, jiraGetJiraTicketHistoryOutputSchema, jiraMoveJiraTicketToProjectParamsSchema, jiraMoveJiraTicketToProjectOutputSchema, jiraUpdateJiraTicketDetailsParamsSchema, jiraUpdateJiraTicketDetailsOutputSchema, jiraUpdateJiraTicketStatusParamsSchema, jiraUpdateJiraTicketStatusOutputSchema, jiraCreateServiceDeskRequestParamsSchema, jiraCreateServiceDeskRequestOutputSchema, jiraLinkJiraIssuesParamsSchema, jiraLinkJiraIssuesOutputSchema, jiraLinkAndAssignJiraIssuesParamsSchema, jiraLinkAndAssignJiraIssuesOutputSchema, openstreetmapGetLatitudeLongitudeFromLocationParamsSchema, openstreetmapGetLatitudeLongitudeFromLocationOutputSchema, nwsGetForecastForLocationParamsSchema, nwsGetForecastForLocationOutputSchema, googlemapsNearbysearchRestaurantsOutputSchema, googlemapsNearbysearchRestaurantsParamsSchema, firecrawlScrapeUrlOutputSchema, firecrawlScrapeUrlParamsSchema, resendSendEmailOutputSchema, resendSendEmailHtmlParamsSchema, resendSendEmailHtmlOutputSchema, firecrawlScrapeTweetDataWithNitterParamsSchema, firecrawlScrapeTweetDataWithNitterOutputSchema, resendSendEmailParamsSchema, linkedinCreateShareLinkedinPostUrlParamsSchema, linkedinCreateShareLinkedinPostUrlOutputSchema, xCreateShareXPostUrlParamsSchema, xCreateShareXPostUrlOutputSchema, finnhubSymbolLookupParamsSchema, finnhubSymbolLookupOutputSchema, finnhubGetBasicFinancialsParamsSchema, finnhubGetBasicFinancialsOutputSchema, confluenceFetchPageContentParamsSchema, confluenceFetchPageContentOutputSchema, snowflakeRunSnowflakeQueryParamsSchema, snowflakeRunSnowflakeQueryOutputSchema, lookerEnableUserByEmailParamsSchema, lookerEnableUserByEmailOutputSchema, googleOauthUpdateDocParamsSchema, googleOauthUpdateDocOutputSchema, googleOauthAddTextToTopOfDocParamsSchema, googleOauthAddTextToTopOfDocOutputSchema, googleOauthCreateSpreadsheetParamsSchema, googleOauthCreateSpreadsheetOutputSchema, googleOauthUpdateSpreadsheetParamsSchema, googleOauthUpdateSpreadsheetOutputSchema, googleOauthAppendRowsToSpreadsheetParamsSchema, googleOauthAppendRowsToSpreadsheetOutputSchema, googleOauthDeleteRowFromSpreadsheetParamsSchema, googleOauthDeleteRowFromSpreadsheetOutputSchema, googleOauthScheduleCalendarMeetingParamsSchema, googleOauthScheduleCalendarMeetingOutputSchema, googleOauthListCalendarsParamsSchema, googleOauthListCalendarsOutputSchema, googleOauthListCalendarEventsParamsSchema, googleOauthListCalendarEventsOutputSchema, googleOauthUpdateCalendarEventParamsSchema, googleOauthUpdateCalendarEventOutputSchema, googleOauthDeleteCalendarEventParamsSchema, googleOauthDeleteCalendarEventOutputSchema, googleOauthEditAGoogleCalendarEventParamsSchema, googleOauthEditAGoogleCalendarEventOutputSchema, googleOauthCreatePresentationParamsSchema, googleOauthCreatePresentationOutputSchema, googleOauthUpdatePresentationParamsSchema, googleOauthUpdatePresentationOutputSchema, googleOauthGetPresentationParamsSchema, googleOauthGetPresentationOutputSchema, googleOauthSearchDriveByKeywordsParamsSchema, googleOauthSearchDriveByKeywordsOutputSchema, googleOauthListGroupsOutputSchema, googleOauthListGroupsParamsSchema, googleOauthGetGroupOutputSchema, googleOauthGetGroupParamsSchema, googleOauthListGroupMembersOutputSchema, googleOauthListGroupMembersParamsSchema, googleOauthHasGroupMemberOutputSchema, googleOauthHasGroupMemberParamsSchema, googleOauthAddGroupMemberOutputSchema, googleOauthAddGroupMemberParamsSchema, googleOauthDeleteGroupMemberOutputSchema, googleOauthDeleteGroupMemberParamsSchema, salesforceUpdateRecordParamsSchema, salesforceUpdateRecordOutputSchema, salesforceCreateCaseParamsSchema, salesforceCreateCaseOutputSchema, salesforceGenerateSalesReportParamsSchema, salesforceGenerateSalesReportOutputSchema, salesforceGetRecordParamsSchema, salesforceGetRecordOutputSchema, microsoftMessageTeamsChatParamsSchema, microsoftMessageTeamsChatOutputSchema, microsoftMessageTeamsChannelParamsSchema, microsoftMessageTeamsChannelOutputSchema, salesforceGetSalesforceRecordsByQueryParamsSchema, salesforceGetSalesforceRecordsByQueryOutputSchema, asanaCommentTaskParamsSchema, asanaCommentTaskOutputSchema, asanaCreateTaskParamsSchema, asanaCreateTaskOutputSchema, asanaUpdateTaskParamsSchema, asanaUpdateTaskOutputSchema, githubCreateOrUpdateFileParamsSchema, githubCreateOrUpdateFileOutputSchema, githubCreateBranchParamsSchema, githubCreateBranchOutputSchema, githubCreatePullRequestParamsSchema, githubCreatePullRequestOutputSchema, microsoftUpdateSpreadsheetParamsSchema, microsoftUpdateSpreadsheetOutputSchema, microsoftUpdateDocumentParamsSchema, microsoftUpdateDocumentOutputSchema, microsoftGetDocumentParamsSchema, microsoftGetDocumentOutputSchema, githubListPullRequestsParamsSchema, githubListPullRequestsOutputSchema, jiraGetJiraIssuesByQueryOutputSchema, jiraGetJiraIssuesByQueryParamsSchema, salesforceCreateRecordParamsSchema, salesforceCreateRecordOutputSchema, firecrawlDeepResearchParamsSchema, firecrawlDeepResearchOutputSchema, bingGetTopNSearchResultUrlsParamsSchema, bingGetTopNSearchResultUrlsOutputSchema, microsoftCreateDocumentParamsSchema, microsoftCreateDocumentOutputSchema, asanaListAsanaTasksByProjectParamsSchema, asanaListAsanaTasksByProjectOutputSchema, asanaSearchTasksParamsSchema, asanaSearchTasksOutputSchema, asanaGetTasksDetailsParamsSchema, asanaGetTasksDetailsOutputSchema, notionSearchByTitleParamsSchema, notionSearchByTitleOutputSchema, googlemailSearchGmailMessagesOutputSchema, googlemailSearchGmailMessagesParamsSchema, googlemailListGmailThreadsOutputSchema, googlemailListGmailThreadsParamsSchema, gitlabSearchGroupOutputSchema, gitlabSearchGroupParamsSchema, githubSearchOrganizationOutputSchema, githubSearchOrganizationParamsSchema, salesforceSearchSalesforceRecordsParamsSchema, salesforceSearchSalesforceRecordsOutputSchema, googleOauthGetDriveFileContentByIdOutputSchema, googleOauthGetDriveFileContentByIdParamsSchema, googleOauthSearchDriveByQueryOutputSchema, googleOauthSearchDriveByQueryParamsSchema, googleOauthSearchDriveByQueryAndGetFileContentParamsSchema, googleOauthSearchDriveByQueryAndGetFileContentOutputSchema, googleOauthQueryGoogleBigQueryParamsSchema, googleOauthQueryGoogleBigQueryOutputSchema, githubGetFileContentParamsSchema, githubGetFileContentOutputSchema, githubListDirectoryOutputSchema, githubListDirectoryParamsSchema, githubGetBranchParamsSchema, githubGetBranchOutputSchema, githubListCommitsParamsSchema, githubListCommitsOutputSchema, githubGetPullRequestDetailsParamsSchema, githubGetPullRequestDetailsOutputSchema, linearGetIssuesParamsSchema, linearGetIssuesOutputSchema, linearGetIssueDetailsParamsSchema, linearGetIssueDetailsOutputSchema, linearGetProjectDetailsParamsSchema, linearGetProjectDetailsOutputSchema, linearGetTeamDetailsParamsSchema, linearGetTeamDetailsOutputSchema, linearGetProjectsParamsSchema, linearGetProjectsOutputSchema, linearGetTeamsParamsSchema, linearGetTeamsOutputSchema, linearCreateIssueParamsSchema, linearCreateIssueOutputSchema, hubspotGetContactsParamsSchema, hubspotGetContactsOutputSchema, hubspotGetContactDetailsParamsSchema, hubspotGetContactDetailsOutputSchema, hubspotGetCompaniesParamsSchema, hubspotGetCompaniesOutputSchema, hubspotGetCompanyDetailsParamsSchema, hubspotGetCompanyDetailsOutputSchema, hubspotGetDealsParamsSchema, hubspotGetDealsOutputSchema, hubspotGetDealDetailsParamsSchema, hubspotGetDealDetailsOutputSchema, hubspotGetTicketsParamsSchema, hubspotGetTicketsOutputSchema, hubspotGetTicketDetailsParamsSchema, hubspotGetTicketDetailsOutputSchema, gitlabGetFileContentParamsSchema, gitlabGetFileContentOutputSchema, gitlabGetMergeRequestParamsSchema, gitlabGetMergeRequestOutputSchema, jiraPublicCommentOnServiceDeskRequestParamsSchema, jiraPublicCommentOnServiceDeskRequestOutputSchema, googlemailSendGmailParamsSchema, googlemailSendGmailOutputSchema, googlemailReplyToGmailParamsSchema, googlemailReplyToGmailOutputSchema, gitlabListDirectoryParamsSchema, gitlabListDirectoryOutputSchema, firecrawlSearchAndScrapeOutputSchema, firecrawlSearchAndScrapeParamsSchema, firecrawlGetTopNSearchResultUrlsParamsSchema, firecrawlGetTopNSearchResultUrlsOutputSchema, googleOauthSearchDriveByKeywordsAndGetFileContentParamsSchema, googleOauthSearchDriveByKeywordsAndGetFileContentOutputSchema, perplexityPerplexityDeepResearchParamsSchema, perplexityPerplexityDeepResearchOutputSchema, slackUserSearchSlackParamsSchema, slackUserSearchSlackOutputSchema, slackUserSearchSlackRTSParamsSchema, slackUserSearchSlackRTSOutputSchema, oktaOrgGetOktaUserByNameParamsSchema, oktaOrgGetOktaUserByNameOutputSchema, googleSearchCustomSearchParamsSchema, googleSearchCustomSearchOutputSchema, salesforceSearchAllSalesforceRecordsParamsSchema, salesforceSearchAllSalesforceRecordsOutputSchema, salesforceListReportsParamsSchema, salesforceListReportsOutputSchema, salesforceExecuteReportParamsSchema, salesforceExecuteReportOutputSchema, slackSendDmFromBotParamsSchema, slackSendDmFromBotOutputSchema, slackGetChannelMembersParamsSchema, slackGetChannelMembersOutputSchema, salesforceGetReportMetadataParamsSchema, salesforceGetReportMetadataOutputSchema, googleOauthUpdateRowsInSpreadsheetParamsSchema, googleOauthUpdateRowsInSpreadsheetOutputSchema, } from "./autogen/types.js";
1
+ import { genericFillTemplateParamsSchema, genericFillTemplateOutputSchema, confluenceOverwritePageParamsSchema, confluenceOverwritePageOutputSchema, googlemapsValidateAddressOutputSchema, googlemapsValidateAddressParamsSchema, googleOauthCreateNewGoogleDocParamsSchema, googleOauthCreateNewGoogleDocOutputSchema, mathAddOutputSchema, mathAddParamsSchema, mongoInsertMongoDocOutputSchema, mongoInsertMongoDocParamsSchema, slackSendMessageOutputSchema, slackSendMessageParamsSchema, slackGetChannelMessagesOutputSchema, slackGetChannelMessagesParamsSchema, slackCreateChannelParamsSchema, slackCreateChannelOutputSchema, snowflakeGetRowByFieldValueOutputSchema, snowflakeGetRowByFieldValueParamsSchema, zendeskCreateZendeskTicketOutputSchema, zendeskCreateZendeskTicketParamsSchema, zendeskGetTicketDetailsOutputSchema, zendeskGetTicketDetailsParamsSchema, zendeskUpdateTicketStatusOutputSchema, zendeskUpdateTicketStatusParamsSchema, zendeskAddCommentToTicketOutputSchema, zendeskAddCommentToTicketParamsSchema, zendeskAssignTicketOutputSchema, zendeskAssignTicketParamsSchema, zendeskListZendeskTicketsOutputSchema, zendeskListZendeskTicketsParamsSchema, zendeskSearchZendeskByQueryOutputSchema, zendeskSearchZendeskByQueryParamsSchema, jiraAssignJiraTicketParamsSchema, jiraAssignJiraTicketOutputSchema, jiraCommentJiraTicketParamsSchema, jiraCommentJiraTicketOutputSchema, jiraCommentJiraTicketWithMentionsParamsSchema, jiraCommentJiraTicketWithMentionsOutputSchema, jiraCreateJiraTicketParamsSchema, jiraCreateJiraTicketOutputSchema, jiraGetJiraTicketDetailsParamsSchema, jiraGetJiraTicketDetailsOutputSchema, jiraGetJiraTicketHistoryParamsSchema, jiraGetJiraTicketHistoryOutputSchema, jiraMoveJiraTicketToProjectParamsSchema, jiraMoveJiraTicketToProjectOutputSchema, jiraUpdateJiraTicketDetailsParamsSchema, jiraUpdateJiraTicketDetailsOutputSchema, jiraUpdateJiraTicketStatusParamsSchema, jiraUpdateJiraTicketStatusOutputSchema, jiraCreateServiceDeskRequestParamsSchema, jiraCreateServiceDeskRequestOutputSchema, jiraLinkJiraIssuesParamsSchema, jiraLinkJiraIssuesOutputSchema, jiraLinkAndAssignJiraIssuesParamsSchema, jiraLinkAndAssignJiraIssuesOutputSchema, openstreetmapGetLatitudeLongitudeFromLocationParamsSchema, openstreetmapGetLatitudeLongitudeFromLocationOutputSchema, nwsGetForecastForLocationParamsSchema, nwsGetForecastForLocationOutputSchema, googlemapsNearbysearchRestaurantsOutputSchema, googlemapsNearbysearchRestaurantsParamsSchema, firecrawlScrapeUrlOutputSchema, firecrawlScrapeUrlParamsSchema, resendSendEmailOutputSchema, resendSendEmailHtmlParamsSchema, resendSendEmailHtmlOutputSchema, firecrawlScrapeTweetDataWithNitterParamsSchema, firecrawlScrapeTweetDataWithNitterOutputSchema, resendSendEmailParamsSchema, linkedinCreateShareLinkedinPostUrlParamsSchema, linkedinCreateShareLinkedinPostUrlOutputSchema, xCreateShareXPostUrlParamsSchema, xCreateShareXPostUrlOutputSchema, finnhubSymbolLookupParamsSchema, finnhubSymbolLookupOutputSchema, finnhubGetBasicFinancialsParamsSchema, finnhubGetBasicFinancialsOutputSchema, confluenceFetchPageContentParamsSchema, confluenceFetchPageContentOutputSchema, snowflakeRunSnowflakeQueryParamsSchema, snowflakeRunSnowflakeQueryOutputSchema, lookerEnableUserByEmailParamsSchema, lookerEnableUserByEmailOutputSchema, googleOauthUpdateDocParamsSchema, googleOauthUpdateDocOutputSchema, googleOauthAddTextToTopOfDocParamsSchema, googleOauthAddTextToTopOfDocOutputSchema, googleOauthCreateSpreadsheetParamsSchema, googleOauthCreateSpreadsheetOutputSchema, googleOauthGetSpreadsheetMetadataParamsSchema, googleOauthGetSpreadsheetMetadataOutputSchema, googleOauthUpdateSpreadsheetParamsSchema, googleOauthUpdateSpreadsheetOutputSchema, googleOauthAppendRowsToSpreadsheetParamsSchema, googleOauthAppendRowsToSpreadsheetOutputSchema, googleOauthDeleteRowFromSpreadsheetParamsSchema, googleOauthDeleteRowFromSpreadsheetOutputSchema, googleOauthScheduleCalendarMeetingParamsSchema, googleOauthScheduleCalendarMeetingOutputSchema, googleOauthListCalendarsParamsSchema, googleOauthListCalendarsOutputSchema, googleOauthListCalendarEventsParamsSchema, googleOauthListCalendarEventsOutputSchema, googleOauthUpdateCalendarEventParamsSchema, googleOauthUpdateCalendarEventOutputSchema, googleOauthDeleteCalendarEventParamsSchema, googleOauthDeleteCalendarEventOutputSchema, googleOauthEditAGoogleCalendarEventParamsSchema, googleOauthEditAGoogleCalendarEventOutputSchema, googleOauthCreatePresentationParamsSchema, googleOauthCreatePresentationOutputSchema, googleOauthUpdatePresentationParamsSchema, googleOauthUpdatePresentationOutputSchema, googleOauthGetPresentationParamsSchema, googleOauthGetPresentationOutputSchema, googleOauthSearchDriveByKeywordsParamsSchema, googleOauthSearchDriveByKeywordsOutputSchema, googleOauthListGroupsOutputSchema, googleOauthListGroupsParamsSchema, googleOauthGetGroupOutputSchema, googleOauthGetGroupParamsSchema, googleOauthListGroupMembersOutputSchema, googleOauthListGroupMembersParamsSchema, googleOauthHasGroupMemberOutputSchema, googleOauthHasGroupMemberParamsSchema, googleOauthAddGroupMemberOutputSchema, googleOauthAddGroupMemberParamsSchema, googleOauthDeleteGroupMemberOutputSchema, googleOauthDeleteGroupMemberParamsSchema, salesforceUpdateRecordParamsSchema, salesforceUpdateRecordOutputSchema, salesforceCreateCaseParamsSchema, salesforceCreateCaseOutputSchema, salesforceGenerateSalesReportParamsSchema, salesforceGenerateSalesReportOutputSchema, salesforceGetRecordParamsSchema, salesforceGetRecordOutputSchema, microsoftMessageTeamsChatParamsSchema, microsoftMessageTeamsChatOutputSchema, microsoftMessageTeamsChannelParamsSchema, microsoftMessageTeamsChannelOutputSchema, salesforceGetSalesforceRecordsByQueryParamsSchema, salesforceGetSalesforceRecordsByQueryOutputSchema, asanaCommentTaskParamsSchema, asanaCommentTaskOutputSchema, asanaCreateTaskParamsSchema, asanaCreateTaskOutputSchema, asanaUpdateTaskParamsSchema, asanaUpdateTaskOutputSchema, githubCreateOrUpdateFileParamsSchema, githubCreateOrUpdateFileOutputSchema, githubCreateBranchParamsSchema, githubCreateBranchOutputSchema, githubCreatePullRequestParamsSchema, githubCreatePullRequestOutputSchema, microsoftUpdateSpreadsheetParamsSchema, microsoftUpdateSpreadsheetOutputSchema, microsoftUpdateDocumentParamsSchema, microsoftUpdateDocumentOutputSchema, microsoftGetDocumentParamsSchema, microsoftGetDocumentOutputSchema, githubListPullRequestsParamsSchema, githubListPullRequestsOutputSchema, jiraGetJiraIssuesByQueryOutputSchema, jiraGetJiraIssuesByQueryParamsSchema, salesforceCreateRecordParamsSchema, salesforceCreateRecordOutputSchema, firecrawlDeepResearchParamsSchema, firecrawlDeepResearchOutputSchema, bingGetTopNSearchResultUrlsParamsSchema, bingGetTopNSearchResultUrlsOutputSchema, microsoftCreateDocumentParamsSchema, microsoftCreateDocumentOutputSchema, asanaListAsanaTasksByProjectParamsSchema, asanaListAsanaTasksByProjectOutputSchema, asanaSearchTasksParamsSchema, asanaSearchTasksOutputSchema, asanaGetTasksDetailsParamsSchema, asanaGetTasksDetailsOutputSchema, notionSearchByTitleParamsSchema, notionSearchByTitleOutputSchema, googlemailSearchGmailMessagesOutputSchema, googlemailSearchGmailMessagesParamsSchema, googlemailListGmailThreadsOutputSchema, googlemailListGmailThreadsParamsSchema, gitlabSearchGroupOutputSchema, gitlabSearchGroupParamsSchema, githubSearchOrganizationOutputSchema, githubSearchOrganizationParamsSchema, salesforceSearchSalesforceRecordsParamsSchema, salesforceSearchSalesforceRecordsOutputSchema, googleOauthGetDriveFileContentByIdOutputSchema, googleOauthGetDriveFileContentByIdParamsSchema, googleOauthSearchDriveByQueryOutputSchema, googleOauthSearchDriveByQueryParamsSchema, googleOauthSearchDriveByQueryAndGetFileContentParamsSchema, googleOauthSearchDriveByQueryAndGetFileContentOutputSchema, googleOauthQueryGoogleBigQueryParamsSchema, googleOauthQueryGoogleBigQueryOutputSchema, githubGetFileContentParamsSchema, githubGetFileContentOutputSchema, githubListDirectoryOutputSchema, githubListDirectoryParamsSchema, githubGetBranchParamsSchema, githubGetBranchOutputSchema, githubListCommitsParamsSchema, githubListCommitsOutputSchema, githubGetPullRequestDetailsParamsSchema, githubGetPullRequestDetailsOutputSchema, linearGetIssuesParamsSchema, linearGetIssuesOutputSchema, linearGetIssueDetailsParamsSchema, linearGetIssueDetailsOutputSchema, linearGetProjectDetailsParamsSchema, linearGetProjectDetailsOutputSchema, linearGetTeamDetailsParamsSchema, linearGetTeamDetailsOutputSchema, linearGetProjectsParamsSchema, linearGetProjectsOutputSchema, linearGetTeamsParamsSchema, linearGetTeamsOutputSchema, linearCreateIssueParamsSchema, linearCreateIssueOutputSchema, hubspotGetContactsParamsSchema, hubspotGetContactsOutputSchema, hubspotGetContactDetailsParamsSchema, hubspotGetContactDetailsOutputSchema, hubspotGetCompaniesParamsSchema, hubspotGetCompaniesOutputSchema, hubspotGetCompanyDetailsParamsSchema, hubspotGetCompanyDetailsOutputSchema, hubspotGetDealsParamsSchema, hubspotGetDealsOutputSchema, hubspotGetDealDetailsParamsSchema, hubspotGetDealDetailsOutputSchema, hubspotGetTicketsParamsSchema, hubspotGetTicketsOutputSchema, hubspotGetTicketDetailsParamsSchema, hubspotGetTicketDetailsOutputSchema, gitlabGetFileContentParamsSchema, gitlabGetFileContentOutputSchema, gitlabGetMergeRequestParamsSchema, gitlabGetMergeRequestOutputSchema, jiraPublicCommentOnServiceDeskRequestParamsSchema, jiraPublicCommentOnServiceDeskRequestOutputSchema, googlemailSendGmailParamsSchema, googlemailSendGmailOutputSchema, googlemailReplyToGmailParamsSchema, googlemailReplyToGmailOutputSchema, gitlabListDirectoryParamsSchema, gitlabListDirectoryOutputSchema, firecrawlSearchAndScrapeOutputSchema, firecrawlSearchAndScrapeParamsSchema, firecrawlGetTopNSearchResultUrlsParamsSchema, firecrawlGetTopNSearchResultUrlsOutputSchema, googleOauthSearchDriveByKeywordsAndGetFileContentParamsSchema, googleOauthSearchDriveByKeywordsAndGetFileContentOutputSchema, perplexityPerplexityDeepResearchParamsSchema, perplexityPerplexityDeepResearchOutputSchema, slackUserSearchSlackParamsSchema, slackUserSearchSlackOutputSchema, slackUserSearchSlackRTSParamsSchema, slackUserSearchSlackRTSOutputSchema, oktaOrgGetOktaUserByNameParamsSchema, oktaOrgGetOktaUserByNameOutputSchema, googleSearchCustomSearchParamsSchema, googleSearchCustomSearchOutputSchema, salesforceSearchAllSalesforceRecordsParamsSchema, salesforceSearchAllSalesforceRecordsOutputSchema, salesforceListReportsParamsSchema, salesforceListReportsOutputSchema, salesforceExecuteReportParamsSchema, salesforceExecuteReportOutputSchema, slackSendDmFromBotParamsSchema, slackSendDmFromBotOutputSchema, slackGetChannelMembersParamsSchema, slackGetChannelMembersOutputSchema, salesforceGetReportMetadataParamsSchema, salesforceGetReportMetadataOutputSchema, googleOauthUpdateRowsInSpreadsheetParamsSchema, googleOauthUpdateRowsInSpreadsheetOutputSchema, } from "./autogen/types.js";
2
2
  import validateAddress from "./providers/googlemaps/validateAddress.js";
3
3
  import add from "./providers/math/add.js";
4
4
  import fillTemplate from "./providers/generic/fillTemplate.js";
@@ -53,6 +53,7 @@ import updateCalendarEvent from "./providers/google-oauth/updateCalendarEvent.js
53
53
  import deleteCalendarEvent from "./providers/google-oauth/deleteCalendarEvent.js";
54
54
  import editAGoogleCalendarEvent from "./providers/google-oauth/editAGoogleCalendarEvent.js";
55
55
  import createSpreadsheet from "./providers/google-oauth/createSpreadsheet.js";
56
+ import getSpreadsheetMetadata from "./providers/google-oauth/getSpreadsheetMetadata.js";
56
57
  import updateSpreadsheet from "./providers/google-oauth/updateSpreadsheet.js";
57
58
  import appendRowsToSpreadsheet from "./providers/google-oauth/appendRowsToSpreadsheet.js";
58
59
  import deleteRowFromSpreadsheet from "./providers/google-oauth/deleteRowFromSpreadsheet.js";
@@ -590,6 +591,12 @@ export const ActionMapper = {
590
591
  outputSchema: googleOauthCreateSpreadsheetOutputSchema,
591
592
  actionType: "write",
592
593
  },
594
+ getSpreadsheetMetadata: {
595
+ fn: getSpreadsheetMetadata,
596
+ paramsSchema: googleOauthGetSpreadsheetMetadataParamsSchema,
597
+ outputSchema: googleOauthGetSpreadsheetMetadataOutputSchema,
598
+ actionType: "read",
599
+ },
593
600
  updateSpreadsheet: {
594
601
  fn: updateSpreadsheet,
595
602
  paramsSchema: googleOauthUpdateSpreadsheetParamsSchema,
@@ -93,6 +93,7 @@ export declare const googleOauthUpdateCalendarEventDefinition: ActionTemplate;
93
93
  export declare const googleOauthEditAGoogleCalendarEventDefinition: ActionTemplate;
94
94
  export declare const googleOauthDeleteCalendarEventDefinition: ActionTemplate;
95
95
  export declare const googleOauthCreateSpreadsheetDefinition: ActionTemplate;
96
+ export declare const googleOauthGetSpreadsheetMetadataDefinition: ActionTemplate;
96
97
  export declare const googleOauthUpdateSpreadsheetDefinition: ActionTemplate;
97
98
  export declare const googleOauthAppendRowsToSpreadsheetDefinition: ActionTemplate;
98
99
  export declare const googleOauthDeleteRowFromSpreadsheetDefinition: ActionTemplate;
@@ -714,6 +714,10 @@ export const slackSendMessageDefinition = {
714
714
  type: "string",
715
715
  description: "The message content to send to Slack. Can include markdown formatting.",
716
716
  },
717
+ unfurlLinks: {
718
+ type: "boolean",
719
+ description: "Whether to enable unfurling of links in the message (defaults to true)",
720
+ },
717
721
  },
718
722
  },
719
723
  output: {
@@ -7063,6 +7067,72 @@ export const googleOauthCreateSpreadsheetDefinition = {
7063
7067
  name: "createSpreadsheet",
7064
7068
  provider: "googleOauth",
7065
7069
  };
7070
+ export const googleOauthGetSpreadsheetMetadataDefinition = {
7071
+ displayName: "Get spreadsheet metadata",
7072
+ description: "Get lightweight metadata for an existing Google Spreadsheet including sheet IDs and titles",
7073
+ scopes: [],
7074
+ tags: [],
7075
+ parameters: {
7076
+ type: "object",
7077
+ required: ["spreadsheetId"],
7078
+ properties: {
7079
+ spreadsheetId: {
7080
+ type: "string",
7081
+ description: "The ID of the Google Spreadsheet to fetch metadata for",
7082
+ tags: ["recommend-predefined"],
7083
+ },
7084
+ },
7085
+ },
7086
+ output: {
7087
+ type: "object",
7088
+ required: ["success"],
7089
+ properties: {
7090
+ success: {
7091
+ type: "boolean",
7092
+ description: "Whether spreadsheet metadata was fetched successfully",
7093
+ },
7094
+ spreadsheetId: {
7095
+ type: "string",
7096
+ description: "The spreadsheet ID",
7097
+ },
7098
+ spreadsheetTitle: {
7099
+ type: "string",
7100
+ description: "The spreadsheet title",
7101
+ },
7102
+ sheets: {
7103
+ type: "array",
7104
+ description: "The list of sheets in the spreadsheet",
7105
+ items: {
7106
+ type: "object",
7107
+ properties: {
7108
+ sheetId: {
7109
+ type: "number",
7110
+ description: "The ID of the sheet",
7111
+ },
7112
+ title: {
7113
+ type: "string",
7114
+ description: "The sheet title",
7115
+ },
7116
+ index: {
7117
+ type: "number",
7118
+ description: "The sheet index",
7119
+ },
7120
+ gid: {
7121
+ type: "number",
7122
+ description: "The gid used in Google Sheets URLs (same value as sheetId)",
7123
+ },
7124
+ },
7125
+ },
7126
+ },
7127
+ error: {
7128
+ type: "string",
7129
+ description: "The error that occurred if metadata retrieval failed",
7130
+ },
7131
+ },
7132
+ },
7133
+ name: "getSpreadsheetMetadata",
7134
+ provider: "googleOauth",
7135
+ };
7066
7136
  export const googleOauthUpdateSpreadsheetDefinition = {
7067
7137
  displayName: "Update a spreadsheet",
7068
7138
  description: "Update a Google Spreadsheet with new content specified",
@@ -10873,6 +10943,10 @@ export const salesforceExecuteReportDefinition = {
10873
10943
  type: "boolean",
10874
10944
  description: "Whether to include detailed report metadata in the response",
10875
10945
  },
10946
+ includeSummary: {
10947
+ type: "boolean",
10948
+ description: "Whether to include summary/aggregate data (totals, counts, etc.)",
10949
+ },
10876
10950
  },
10877
10951
  },
10878
10952
  output: {
@@ -10883,6 +10957,11 @@ export const salesforceExecuteReportDefinition = {
10883
10957
  type: "boolean",
10884
10958
  description: "Whether the report was successfully executed",
10885
10959
  },
10960
+ summary: {
10961
+ type: "object",
10962
+ description: "Summary/aggregate data from the report (totals, counts, averages, etc.)",
10963
+ additionalProperties: true,
10964
+ },
10886
10965
  reportData: {
10887
10966
  type: "object",
10888
10967
  description: "The report data returned by Salesforce, including factMap with aggregates and row-level details",
@@ -102,6 +102,7 @@ export declare enum ActionName {
102
102
  EDITAGOOGLECALENDAREVENT = "editAGoogleCalendarEvent",
103
103
  DELETECALENDAREVENT = "deleteCalendarEvent",
104
104
  CREATESPREADSHEET = "createSpreadsheet",
105
+ GETSPREADSHEETMETADATA = "getSpreadsheetMetadata",
105
106
  UPDATESPREADSHEET = "updateSpreadsheet",
106
107
  APPENDROWSTOSPREADSHEET = "appendRowsToSpreadsheet",
107
108
  DELETEROWFROMSPREADSHEET = "deleteRowFromSpreadsheet",
@@ -968,14 +969,17 @@ export declare const slackSendMessageParamsSchema: z.ZodObject<{
968
969
  channelId: z.ZodOptional<z.ZodString>;
969
970
  channelName: z.ZodOptional<z.ZodString>;
970
971
  message: z.ZodString;
972
+ unfurlLinks: z.ZodOptional<z.ZodBoolean>;
971
973
  }, "strip", z.ZodTypeAny, {
972
974
  message: string;
973
975
  channelId?: string | undefined;
974
976
  channelName?: string | undefined;
977
+ unfurlLinks?: boolean | undefined;
975
978
  }, {
976
979
  message: string;
977
980
  channelId?: string | undefined;
978
981
  channelName?: string | undefined;
982
+ unfurlLinks?: boolean | undefined;
979
983
  }>;
980
984
  export type slackSendMessageParamsType = z.infer<typeof slackSendMessageParamsSchema>;
981
985
  export declare const slackSendMessageOutputSchema: z.ZodObject<{
@@ -5742,6 +5746,60 @@ export declare const googleOauthCreateSpreadsheetOutputSchema: z.ZodObject<{
5742
5746
  }>;
5743
5747
  export type googleOauthCreateSpreadsheetOutputType = z.infer<typeof googleOauthCreateSpreadsheetOutputSchema>;
5744
5748
  export type googleOauthCreateSpreadsheetFunction = ActionFunction<googleOauthCreateSpreadsheetParamsType, AuthParamsType, googleOauthCreateSpreadsheetOutputType>;
5749
+ export declare const googleOauthGetSpreadsheetMetadataParamsSchema: z.ZodObject<{
5750
+ spreadsheetId: z.ZodString;
5751
+ }, "strip", z.ZodTypeAny, {
5752
+ spreadsheetId: string;
5753
+ }, {
5754
+ spreadsheetId: string;
5755
+ }>;
5756
+ export type googleOauthGetSpreadsheetMetadataParamsType = z.infer<typeof googleOauthGetSpreadsheetMetadataParamsSchema>;
5757
+ export declare const googleOauthGetSpreadsheetMetadataOutputSchema: z.ZodObject<{
5758
+ success: z.ZodBoolean;
5759
+ spreadsheetId: z.ZodOptional<z.ZodString>;
5760
+ spreadsheetTitle: z.ZodOptional<z.ZodString>;
5761
+ sheets: z.ZodOptional<z.ZodArray<z.ZodObject<{
5762
+ sheetId: z.ZodOptional<z.ZodNumber>;
5763
+ title: z.ZodOptional<z.ZodString>;
5764
+ index: z.ZodOptional<z.ZodNumber>;
5765
+ gid: z.ZodOptional<z.ZodNumber>;
5766
+ }, "strip", z.ZodTypeAny, {
5767
+ title?: string | undefined;
5768
+ index?: number | undefined;
5769
+ sheetId?: number | undefined;
5770
+ gid?: number | undefined;
5771
+ }, {
5772
+ title?: string | undefined;
5773
+ index?: number | undefined;
5774
+ sheetId?: number | undefined;
5775
+ gid?: number | undefined;
5776
+ }>, "many">>;
5777
+ error: z.ZodOptional<z.ZodString>;
5778
+ }, "strip", z.ZodTypeAny, {
5779
+ success: boolean;
5780
+ error?: string | undefined;
5781
+ sheets?: {
5782
+ title?: string | undefined;
5783
+ index?: number | undefined;
5784
+ sheetId?: number | undefined;
5785
+ gid?: number | undefined;
5786
+ }[] | undefined;
5787
+ spreadsheetId?: string | undefined;
5788
+ spreadsheetTitle?: string | undefined;
5789
+ }, {
5790
+ success: boolean;
5791
+ error?: string | undefined;
5792
+ sheets?: {
5793
+ title?: string | undefined;
5794
+ index?: number | undefined;
5795
+ sheetId?: number | undefined;
5796
+ gid?: number | undefined;
5797
+ }[] | undefined;
5798
+ spreadsheetId?: string | undefined;
5799
+ spreadsheetTitle?: string | undefined;
5800
+ }>;
5801
+ export type googleOauthGetSpreadsheetMetadataOutputType = z.infer<typeof googleOauthGetSpreadsheetMetadataOutputSchema>;
5802
+ export type googleOauthGetSpreadsheetMetadataFunction = ActionFunction<googleOauthGetSpreadsheetMetadataParamsType, AuthParamsType, googleOauthGetSpreadsheetMetadataOutputType>;
5745
5803
  export declare const googleOauthUpdateSpreadsheetParamsSchema: z.ZodObject<{
5746
5804
  spreadsheetId: z.ZodString;
5747
5805
  requests: z.ZodArray<z.ZodIntersection<z.ZodObject<{}, "strip", z.ZodAny, z.objectOutputType<{}, z.ZodAny, "strip">, z.objectInputType<{}, z.ZodAny, "strip">>, z.ZodEffects<z.ZodAny, any, any>>, "many">;
@@ -7685,25 +7743,31 @@ export type salesforceListReportsFunction = ActionFunction<salesforceListReports
7685
7743
  export declare const salesforceExecuteReportParamsSchema: z.ZodObject<{
7686
7744
  reportId: z.ZodString;
7687
7745
  includeDetails: z.ZodOptional<z.ZodBoolean>;
7746
+ includeSummary: z.ZodOptional<z.ZodBoolean>;
7688
7747
  }, "strip", z.ZodTypeAny, {
7689
7748
  reportId: string;
7690
7749
  includeDetails?: boolean | undefined;
7750
+ includeSummary?: boolean | undefined;
7691
7751
  }, {
7692
7752
  reportId: string;
7693
7753
  includeDetails?: boolean | undefined;
7754
+ includeSummary?: boolean | undefined;
7694
7755
  }>;
7695
7756
  export type salesforceExecuteReportParamsType = z.infer<typeof salesforceExecuteReportParamsSchema>;
7696
7757
  export declare const salesforceExecuteReportOutputSchema: z.ZodObject<{
7697
7758
  success: z.ZodBoolean;
7759
+ summary: z.ZodOptional<z.ZodObject<{}, "strip", z.ZodAny, z.objectOutputType<{}, z.ZodAny, "strip">, z.objectInputType<{}, z.ZodAny, "strip">>>;
7698
7760
  reportData: z.ZodOptional<z.ZodObject<{}, "strip", z.ZodAny, z.objectOutputType<{}, z.ZodAny, "strip">, z.objectInputType<{}, z.ZodAny, "strip">>>;
7699
7761
  error: z.ZodOptional<z.ZodString>;
7700
7762
  }, "strip", z.ZodTypeAny, {
7701
7763
  success: boolean;
7702
7764
  error?: string | undefined;
7765
+ summary?: z.objectOutputType<{}, z.ZodAny, "strip"> | undefined;
7703
7766
  reportData?: z.objectOutputType<{}, z.ZodAny, "strip"> | undefined;
7704
7767
  }, {
7705
7768
  success: boolean;
7706
7769
  error?: string | undefined;
7770
+ summary?: z.objectInputType<{}, z.ZodAny, "strip"> | undefined;
7707
7771
  reportData?: z.objectInputType<{}, z.ZodAny, "strip"> | undefined;
7708
7772
  }>;
7709
7773
  export type salesforceExecuteReportOutputType = z.infer<typeof salesforceExecuteReportOutputSchema>;
@@ -104,6 +104,7 @@ export var ActionName;
104
104
  ActionName["EDITAGOOGLECALENDAREVENT"] = "editAGoogleCalendarEvent";
105
105
  ActionName["DELETECALENDAREVENT"] = "deleteCalendarEvent";
106
106
  ActionName["CREATESPREADSHEET"] = "createSpreadsheet";
107
+ ActionName["GETSPREADSHEETMETADATA"] = "getSpreadsheetMetadata";
107
108
  ActionName["UPDATESPREADSHEET"] = "updateSpreadsheet";
108
109
  ActionName["APPENDROWSTOSPREADSHEET"] = "appendRowsToSpreadsheet";
109
110
  ActionName["DELETEROWFROMSPREADSHEET"] = "deleteRowFromSpreadsheet";
@@ -400,6 +401,10 @@ export const slackSendMessageParamsSchema = z.object({
400
401
  .describe("The name of the Slack channel to send the message to (e.g. general, alerts)")
401
402
  .optional(),
402
403
  message: z.string().describe("The message content to send to Slack. Can include markdown formatting."),
404
+ unfurlLinks: z
405
+ .boolean()
406
+ .describe("Whether to enable unfurling of links in the message (defaults to true)")
407
+ .optional(),
403
408
  });
404
409
  export const slackSendMessageOutputSchema = z.object({
405
410
  success: z.boolean().describe("Whether the message was sent successfully"),
@@ -2538,6 +2543,24 @@ export const googleOauthCreateSpreadsheetOutputSchema = z.object({
2538
2543
  .optional(),
2539
2544
  error: z.string().describe("The error that occurred if the spreadsheet was not created successfully").optional(),
2540
2545
  });
2546
+ export const googleOauthGetSpreadsheetMetadataParamsSchema = z.object({
2547
+ spreadsheetId: z.string().describe("The ID of the Google Spreadsheet to fetch metadata for"),
2548
+ });
2549
+ export const googleOauthGetSpreadsheetMetadataOutputSchema = z.object({
2550
+ success: z.boolean().describe("Whether spreadsheet metadata was fetched successfully"),
2551
+ spreadsheetId: z.string().describe("The spreadsheet ID").optional(),
2552
+ spreadsheetTitle: z.string().describe("The spreadsheet title").optional(),
2553
+ sheets: z
2554
+ .array(z.object({
2555
+ sheetId: z.number().describe("The ID of the sheet").optional(),
2556
+ title: z.string().describe("The sheet title").optional(),
2557
+ index: z.number().describe("The sheet index").optional(),
2558
+ gid: z.number().describe("The gid used in Google Sheets URLs (same value as sheetId)").optional(),
2559
+ }))
2560
+ .describe("The list of sheets in the spreadsheet")
2561
+ .optional(),
2562
+ error: z.string().describe("The error that occurred if metadata retrieval failed").optional(),
2563
+ });
2541
2564
  export const googleOauthUpdateSpreadsheetParamsSchema = z.object({
2542
2565
  spreadsheetId: z.string().describe("The ID of the Google Spreadsheet to update"),
2543
2566
  requests: z
@@ -3996,9 +4019,15 @@ export const salesforceListReportsOutputSchema = z.object({
3996
4019
  export const salesforceExecuteReportParamsSchema = z.object({
3997
4020
  reportId: z.string().describe("Id for the report to execute"),
3998
4021
  includeDetails: z.boolean().describe("Whether to include detailed report metadata in the response").optional(),
4022
+ includeSummary: z.boolean().describe("Whether to include summary/aggregate data (totals, counts, etc.)").optional(),
3999
4023
  });
4000
4024
  export const salesforceExecuteReportOutputSchema = z.object({
4001
4025
  success: z.boolean().describe("Whether the report was successfully executed"),
4026
+ summary: z
4027
+ .object({})
4028
+ .catchall(z.any())
4029
+ .describe("Summary/aggregate data from the report (totals, counts, averages, etc.)")
4030
+ .optional(),
4002
4031
  reportData: z
4003
4032
  .object({})
4004
4033
  .catchall(z.any())
@@ -2,8 +2,7 @@ import { createAxiosClientWithTimeout } from "../../util/axiosClient.js";
2
2
  import mammoth from "mammoth";
3
3
  import { MISSING_AUTH_TOKEN } from "../../util/missingAuthConstants.js";
4
4
  import { extractTextFromPdf } from "../../../utils/pdf.js";
5
- import { getGoogleDocContent, getGoogleSheetContent, getGoogleSlidesContent } from "../../../utils/google.js";
6
- import { read, utils } from "xlsx";
5
+ import { getGoogleDocContent, getGoogleSheetContent, getGoogleSlidesContent, parseWorkbookBufferToPlainText, } from "../../../utils/google.js";
7
6
  import officeParser from "officeparser";
8
7
  const BASE_WEB_URL = "https://drive.google.com/file/d/";
9
8
  const BASE_API_URL = "https://www.googleapis.com/drive/v3/files/";
@@ -112,22 +111,7 @@ const getDriveFileContentById = async ({ params, authParams, }) => {
112
111
  headers,
113
112
  responseType: "arraybuffer",
114
113
  });
115
- // 1. Read the buffer into a workbook
116
- const workbook = read(downloadRes.data, { type: "buffer", sheetStubs: false });
117
- // Convert sheets to CSV with early termination if charLimit is set
118
- const sheetTexts = [];
119
- let totalLength = 0;
120
- const effectiveLimit = charLimit ? charLimit * 1.5 : 100000; // Process 1.5x limit for safety
121
- // 2. Convert all sheets to plain text (CSV-style)
122
- for (const sheetName of workbook.SheetNames) {
123
- if (totalLength >= effectiveLimit)
124
- break; // Early termination
125
- const sheet = workbook.Sheets[sheetName];
126
- const csv = utils.sheet_to_csv(sheet);
127
- sheetTexts.push(`--- Sheet: ${sheetName} ---\n${csv}`);
128
- totalLength += csv.length;
129
- }
130
- content = sheetTexts.join("\n").trim();
114
+ content = parseWorkbookBufferToPlainText(downloadRes.data, charLimit);
131
115
  }
132
116
  else if (mimeType === "application/vnd.openxmlformats-officedocument.presentationml.presentation") {
133
117
  // Handle modern PowerPoint files (.pptx only)
@@ -0,0 +1,15 @@
1
+ import type { googleOauthGetSpreadsheetMetadataFunction } from "../../autogen/types.js";
2
+ /**
3
+ * Fetches metadata for a Google Sheets spreadsheet — title and the list of
4
+ * sheets (name, sheetId, and tab index) — without downloading any cell data.
5
+ *
6
+ * Use this action to discover sheet names and their numeric sheetId values
7
+ * before performing targeted reads or writes. The `sheetId` returned for each
8
+ * sheet is the same integer that appears as `#gid=<n>` in the spreadsheet URL.
9
+ *
10
+ * @param params.spreadsheetId - The ID of the spreadsheet (from its URL)
11
+ * @param authParams.authToken - OAuth2 bearer token with Sheets read scope
12
+ * @returns Spreadsheet title and an array of sheet descriptors, or an error
13
+ */
14
+ declare const getSpreadsheetMetadata: googleOauthGetSpreadsheetMetadataFunction;
15
+ export default getSpreadsheetMetadata;
@@ -0,0 +1,49 @@
1
+ import { MISSING_AUTH_TOKEN } from "../../util/missingAuthConstants.js";
2
+ import { createAxiosClientWithTimeout } from "../../util/axiosClient.js";
3
+ /**
4
+ * Fetches metadata for a Google Sheets spreadsheet — title and the list of
5
+ * sheets (name, sheetId, and tab index) — without downloading any cell data.
6
+ *
7
+ * Use this action to discover sheet names and their numeric sheetId values
8
+ * before performing targeted reads or writes. The `sheetId` returned for each
9
+ * sheet is the same integer that appears as `#gid=<n>` in the spreadsheet URL.
10
+ *
11
+ * @param params.spreadsheetId - The ID of the spreadsheet (from its URL)
12
+ * @param authParams.authToken - OAuth2 bearer token with Sheets read scope
13
+ * @returns Spreadsheet title and an array of sheet descriptors, or an error
14
+ */
15
+ const getSpreadsheetMetadata = async ({ params, authParams, }) => {
16
+ if (!authParams.authToken) {
17
+ return { success: false, error: MISSING_AUTH_TOKEN };
18
+ }
19
+ const { spreadsheetId } = params;
20
+ const axiosClient = createAxiosClientWithTimeout(15_000);
21
+ try {
22
+ const response = await axiosClient.get(`https://sheets.googleapis.com/v4/spreadsheets/${spreadsheetId}`, {
23
+ headers: { Authorization: `Bearer ${authParams.authToken}` },
24
+ params: {
25
+ fields: "spreadsheetId,properties/title,sheets/properties(sheetId,title,index)",
26
+ },
27
+ });
28
+ return {
29
+ success: true,
30
+ spreadsheetId: response.data.spreadsheetId,
31
+ spreadsheetTitle: response.data.properties?.title,
32
+ sheets: (response.data.sheets || []).map((sheet) => ({
33
+ sheetId: sheet.properties?.sheetId,
34
+ title: sheet.properties?.title,
35
+ /** 0-based position of this sheet in the spreadsheet tab order */
36
+ index: sheet.properties?.index,
37
+ /** Same integer used in Google Sheets URL fragments like #gid=<n>. */
38
+ gid: sheet.properties?.sheetId,
39
+ })),
40
+ };
41
+ }
42
+ catch (error) {
43
+ return {
44
+ success: false,
45
+ error: error instanceof Error ? error.message : "Unknown error",
46
+ };
47
+ }
48
+ };
49
+ export default getSpreadsheetMetadata;
@@ -1,15 +1,36 @@
1
1
  import { ApiError, axiosClient } from "../../util/axiosClient.js";
2
2
  const executeReport = async ({ params, authParams, }) => {
3
3
  const { authToken, baseUrl } = authParams;
4
- const { reportId, includeDetails } = params;
4
+ const { reportId, includeDetails, includeSummary } = params;
5
5
  if (!authToken || !baseUrl) {
6
6
  return { success: false, error: "authToken and baseUrl are required for Salesforce API" };
7
7
  }
8
8
  const url = `${baseUrl}/services/data/v65.0/analytics/reports/${reportId}${includeDetails ? "?includeDetails=true" : ""}`;
9
9
  try {
10
10
  const response = await axiosClient.get(url, { headers: { Authorization: `Bearer ${authToken}` } });
11
+ let summary;
12
+ if (includeSummary && response.data) {
13
+ summary = {
14
+ aggregates: response.data.factMap?.aggregates || response.data.factMap?.["T!T"]?.aggregates,
15
+ groupingsDown: response.data.groupingsDown?.groupings?.map((g) => ({
16
+ label: g.label,
17
+ value: g.value,
18
+ aggregates: g.aggregates,
19
+ })),
20
+ groupingsAcross: response.data.groupingsAcross?.groupings?.map((g) => ({
21
+ label: g.label,
22
+ value: g.value,
23
+ aggregates: g.aggregates,
24
+ })),
25
+ reportMetadata: {
26
+ name: response.data.reportMetadata?.name,
27
+ reportType: response.data.reportMetadata?.reportType?.type,
28
+ },
29
+ };
30
+ }
11
31
  return {
12
32
  success: true,
33
+ summary,
13
34
  reportData: includeDetails ? response.data : undefined,
14
35
  };
15
36
  }
@@ -6,7 +6,7 @@ const sendMessage = async ({ params, authParams, }) => {
6
6
  if (!authParams.authToken) {
7
7
  throw new Error(MISSING_AUTH_TOKEN);
8
8
  }
9
- const { channelId: inputChannelId, channelName, message } = params;
9
+ const { channelId: inputChannelId, channelName, message, unfurlLinks } = params;
10
10
  if (!inputChannelId && !channelName) {
11
11
  throw Error("Either channelId or channelName must be provided");
12
12
  }
@@ -24,6 +24,7 @@ const sendMessage = async ({ params, authParams, }) => {
24
24
  await client.chat.postMessage({
25
25
  channel: channelId,
26
26
  text: message, // Fallback text for notifications/clients that don't render blocks
27
+ unfurl_links: unfurlLinks,
27
28
  blocks: [
28
29
  {
29
30
  type: "section",
@@ -44,6 +45,7 @@ const sendMessage = async ({ params, authParams, }) => {
44
45
  await client.chat.postMessage({
45
46
  channel: channelId,
46
47
  text: message,
48
+ unfurl_links: unfurlLinks,
47
49
  });
48
50
  return slackSendMessageOutputSchema.parse({ success: true });
49
51
  }
@@ -128,6 +128,7 @@ interface GoogleSlidesPresentation {
128
128
  };
129
129
  }
130
130
  export declare function parseGoogleDocFromRawContentToPlainText(snapshotRawContent: GoogleDocsDocument): string;
131
+ export declare function parseWorkbookBufferToPlainText(data: ArrayBuffer | Buffer, charLimit?: number): string;
131
132
  export declare function parseGoogleSheetsFromRawContentToPlainText(snapshotRawContent: GoogleSheetsSpreadsheet): string;
132
133
  export declare function parseGoogleSlidesFromRawContentToPlainText(snapshotRawContent: GoogleSlidesPresentation): string;
133
134
  export declare function getGoogleDocContent(fileId: string, authToken: string, axiosClient: AxiosInstance, sharedDriveParams: string): Promise<string>;
@@ -1,4 +1,5 @@
1
1
  import Papa from "papaparse";
2
+ import { read, utils } from "xlsx";
2
3
  import { isAxiosTimeoutError } from "../actions/util/axiosClient.js";
3
4
  // Helper function to parse Google Docs content to plain text
4
5
  export function parseGoogleDocFromRawContentToPlainText(snapshotRawContent) {
@@ -138,6 +139,23 @@ function parseCSVToSheetJson(csvData, sheetName = "Sheet1") {
138
139
  });
139
140
  return JSON.stringify([{ sheetName, headers, rows }]);
140
141
  }
142
+ export function parseWorkbookBufferToPlainText(data, charLimit) {
143
+ const workbook = read(data, { type: "buffer", sheetStubs: false });
144
+ const sheetTexts = [];
145
+ let totalLength = 0;
146
+ // charLimit here is a soft parsing budget; downstream callers may still apply a hard final slice.
147
+ const effectiveLimit = charLimit ? charLimit * 1.5 : 100_000;
148
+ for (const sheetName of workbook.SheetNames) {
149
+ if (totalLength >= effectiveLimit) {
150
+ break;
151
+ }
152
+ const sheet = workbook.Sheets[sheetName];
153
+ const csv = utils.sheet_to_csv(sheet);
154
+ sheetTexts.push(`--- Sheet: ${sheetName} ---\n${csv}`);
155
+ totalLength += csv.length;
156
+ }
157
+ return sheetTexts.join("\n").trim();
158
+ }
141
159
  export function parseGoogleSheetsFromRawContentToPlainText(snapshotRawContent) {
142
160
  if (!snapshotRawContent.sheets)
143
161
  return "[]";
@@ -317,21 +335,14 @@ export async function getGoogleDocContent(fileId, authToken, axiosClient, shared
317
335
  }
318
336
  }
319
337
  export async function getGoogleSheetContent(fileId, authToken, axiosClient, sharedDriveParams) {
320
- // Use CSV export as primary method - it's much faster and more reliable for large sheets
321
- // The Sheets API with includeGridData can timeout on large spreadsheets
338
+ // Prefer XLSX export so native Google Sheets follow the same workbook parsing path as uploaded Excel files.
322
339
  try {
323
- const exportUrl = `${GDRIVE_BASE_URL}${encodeURIComponent(fileId)}/export?mimeType=text/csv${sharedDriveParams}`;
340
+ const exportUrl = `${GDRIVE_BASE_URL}${encodeURIComponent(fileId)}/export?mimeType=application/vnd.openxmlformats-officedocument.spreadsheetml.sheet${sharedDriveParams}`;
324
341
  const exportRes = await axiosClient.get(exportUrl, {
325
342
  headers: { Authorization: `Bearer ${authToken}` },
326
- responseType: "text",
343
+ responseType: "arraybuffer",
327
344
  });
328
- // Clean up trailing commas and convert to JSON format
329
- const cleanedCsv = exportRes.data
330
- .split("\n")
331
- .map((line) => line.replace(/,+$/, ""))
332
- .map((line) => line.replace(/,{2,}/g, ","))
333
- .join("\n");
334
- return parseCSVToSheetJson(cleanedCsv);
345
+ return parseWorkbookBufferToPlainText(exportRes.data);
335
346
  }
336
347
  catch (exportError) {
337
348
  // Check if it's a 404 or permission error
@@ -342,21 +353,36 @@ export async function getGoogleSheetContent(fileId, authToken, axiosClient, shar
342
353
  throw new Error(`Spreadsheet not accessible (${status}): ${fileId}`, { cause: exportError });
343
354
  }
344
355
  }
345
- // If CSV export fails, try the Sheets API as fallback (but this is slower)
356
+ // If XLSX export fails, fall back to the prior CSV-first behavior.
346
357
  try {
347
- const sheetsUrl = `https://sheets.googleapis.com/v4/spreadsheets/${fileId}?includeGridData=true`;
348
- const sheetsRes = await axiosClient.get(sheetsUrl, {
349
- headers: {
350
- Authorization: `Bearer ${authToken}`,
351
- },
358
+ const csvExportUrl = `${GDRIVE_BASE_URL}${encodeURIComponent(fileId)}/export?mimeType=text/csv${sharedDriveParams}`;
359
+ const csvExportRes = await axiosClient.get(csvExportUrl, {
360
+ headers: { Authorization: `Bearer ${authToken}` },
361
+ responseType: "text",
352
362
  });
353
- return parseGoogleSheetsFromRawContentToPlainText(sheetsRes.data);
363
+ const cleanedCsv = csvExportRes.data
364
+ .split("\n")
365
+ .map((line) => line.replace(/,+$/, ""))
366
+ .map((line) => line.replace(/,{2,}/g, ","))
367
+ .join("\n");
368
+ return parseCSVToSheetJson(cleanedCsv);
354
369
  }
355
- catch (sheetsError) {
356
- if (isAxiosTimeoutError(sheetsError)) {
357
- throw new Error("Request timed out using Google Sheets API", { cause: sheetsError });
370
+ catch {
371
+ try {
372
+ const sheetsUrl = `https://sheets.googleapis.com/v4/spreadsheets/${fileId}?includeGridData=true`;
373
+ const sheetsRes = await axiosClient.get(sheetsUrl, {
374
+ headers: {
375
+ Authorization: `Bearer ${authToken}`,
376
+ },
377
+ });
378
+ return parseGoogleSheetsFromRawContentToPlainText(sheetsRes.data);
379
+ }
380
+ catch (sheetsError) {
381
+ if (isAxiosTimeoutError(sheetsError)) {
382
+ throw new Error("Request timed out using Google Sheets API", { cause: sheetsError });
383
+ }
384
+ throw new Error(`Unable to access spreadsheet content: ${fileId}`, { cause: sheetsError });
358
385
  }
359
- throw new Error(`Unable to access spreadsheet content: ${fileId}`, { cause: sheetsError });
360
386
  }
361
387
  }
362
388
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@credal/actions",
3
- "version": "0.2.207",
3
+ "version": "0.2.209",
4
4
  "type": "module",
5
5
  "description": "AI Actions by Credal AI",
6
6
  "sideEffects": false,