@tangle-network/agent-integrations 0.67.1 → 0.67.2

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.
Files changed (32) hide show
  1. package/data/bundled-adapter-manifests.json +1 -1
  2. package/dist/{adapters-CHzc3qI0.js → adapters-C4M7uzRR.js} +89 -61
  3. package/dist/{adapters-CHzc3qI0.js.map → adapters-C4M7uzRR.js.map} +1 -1
  4. package/dist/{bundled-manifest-data-wo3D0Q4P.js → bundled-manifest-data-KD2SsNNX.js} +26 -16
  5. package/dist/{bundled-manifest-data-wo3D0Q4P.js.map → bundled-manifest-data-KD2SsNNX.js.map} +1 -1
  6. package/dist/connectors/adapters/index.d.ts +1 -1
  7. package/dist/connectors/adapters/index.js +1 -1
  8. package/dist/connectors/index.d.ts +2 -2
  9. package/dist/connectors/index.js +2 -2
  10. package/dist/{consumer-DYpMLeNG.d.ts → consumer-DBiE_-E7.d.ts} +2 -2
  11. package/dist/{consumer-DYpMLeNG.d.ts.map → consumer-DBiE_-E7.d.ts.map} +1 -1
  12. package/dist/consumer.d.ts +1 -1
  13. package/dist/{index-Bb---RDI.d.ts → index-DAQVjkde.d.ts} +2 -2
  14. package/dist/{index-Bb---RDI.d.ts.map → index-DAQVjkde.d.ts.map} +1 -1
  15. package/dist/{index-BXhHnxfA.d.ts → index-DT-raio8.d.ts} +11 -10
  16. package/dist/index-DT-raio8.d.ts.map +1 -0
  17. package/dist/index.d.ts +3 -3
  18. package/dist/index.js +4 -4
  19. package/dist/internal/bundled-manifest-runtime.js +1 -1
  20. package/dist/mcp.d.ts +1 -1
  21. package/dist/mcp.js +1 -1
  22. package/dist/registry.js +1 -1
  23. package/dist/runtime.d.ts +1 -1
  24. package/dist/sandbox.d.ts +1 -1
  25. package/dist/{specs-DyeHZSyC.js → specs-CUUU8WIk.js} +2 -2
  26. package/dist/{specs-DyeHZSyC.js.map → specs-CUUU8WIk.js.map} +1 -1
  27. package/dist/specs.js +1 -1
  28. package/dist/{src-CvnOy-XH.js → src-CQjtO44Z.js} +3 -3
  29. package/dist/{src-CvnOy-XH.js.map → src-CQjtO44Z.js.map} +1 -1
  30. package/docs/whatsapp-cloud-routing.md +19 -0
  31. package/package.json +1 -1
  32. package/dist/index-BXhHnxfA.d.ts.map +0 -1
@@ -7990,7 +7990,7 @@ const message = {
7990
7990
  minLength: 1,
7991
7991
  maxLength: 18e3
7992
7992
  };
7993
- const base$10 = declarativeRestConnector({
7993
+ const base$11 = declarativeRestConnector({
7994
7994
  kind: "contiguity",
7995
7995
  displayName: "Contiguity",
7996
7996
  category: "crm",
@@ -8250,14 +8250,14 @@ const base$10 = declarativeRestConnector({
8250
8250
  ]
8251
8251
  });
8252
8252
  const contiguityConnector = {
8253
- ...base$10,
8253
+ ...base$11,
8254
8254
  async executeMutation(inv) {
8255
- if (inv.capabilityName !== "email.send") return base$10.executeMutation(inv);
8255
+ if (inv.capabilityName !== "email.send") return base$11.executeMutation(inv);
8256
8256
  const { body, contentType, ...args } = inv.args;
8257
8257
  if (typeof body !== "string" || !body.length || contentType !== void 0 && contentType !== "text/plain" && contentType !== "text/html") throw new Error("Contiguity email requires a body and supported contentType");
8258
8258
  delete args.text;
8259
8259
  delete args.html;
8260
- return base$10.executeMutation({
8260
+ return base$11.executeMutation({
8261
8261
  ...inv,
8262
8262
  args: {
8263
8263
  ...args,
@@ -8769,7 +8769,7 @@ function transcriptResponse(value) {
8769
8769
  language: "multi"
8770
8770
  };
8771
8771
  }
8772
- const base$9 = declarativeRestConnector({
8772
+ const base$10 = declarativeRestConnector({
8773
8773
  kind: "deepgram",
8774
8774
  displayName: "Deepgram",
8775
8775
  description: "Transcribe audio to text, synthesize text to speech, and analyze audio content with AI-powered speech recognition.",
@@ -9013,10 +9013,10 @@ const base$9 = declarativeRestConnector({
9013
9013
  ]
9014
9014
  });
9015
9015
  const deepgramConnector = {
9016
- ...base$9,
9016
+ ...base$10,
9017
9017
  manifest: {
9018
- ...base$9.manifest,
9019
- capabilities: [...base$9.manifest.capabilities, {
9018
+ ...base$10.manifest,
9019
+ capabilities: [...base$10.manifest.capabilities, {
9020
9020
  name: "transcription.bytes",
9021
9021
  class: "mutation",
9022
9022
  cas: "none",
@@ -9043,7 +9043,7 @@ const deepgramConnector = {
9043
9043
  }]
9044
9044
  },
9045
9045
  async executeMutation(inv) {
9046
- if (inv.capabilityName !== "transcription.bytes") return base$9.executeMutation(inv);
9046
+ if (inv.capabilityName !== "transcription.bytes") return base$10.executeMutation(inv);
9047
9047
  const { bytes, contentType } = privateAudio(inv.args);
9048
9048
  if (inv.source.credentials.kind !== "api-key" || !inv.source.credentials.apiKey || /[\u0000-\u0020\u007f]/.test(inv.source.credentials.apiKey)) throw new IntegrationRuntimeError({
9049
9049
  code: "provider_auth_failed",
@@ -10145,7 +10145,7 @@ const echowinConnector = declarativeRestConnector({
10145
10145
  */
10146
10146
  const ELEVENLABS_BASE_URL = "https://api.elevenlabs.io";
10147
10147
  const MAX_SAMPLE_BYTES = 11e6;
10148
- const base$8 = declarativeRestConnector({
10148
+ const base$9 = declarativeRestConnector({
10149
10149
  kind: "elevenlabs",
10150
10150
  displayName: "ElevenLabs",
10151
10151
  description: "Your own ElevenLabs account: text to speech, voices, instant voice clones of your own voice, speech to text, and conversational voice agents.",
@@ -10262,11 +10262,11 @@ const base$8 = declarativeRestConnector({
10262
10262
  ]
10263
10263
  });
10264
10264
  const elevenlabsConnector = {
10265
- ...base$8,
10265
+ ...base$9,
10266
10266
  manifest: {
10267
- ...base$8.manifest,
10267
+ ...base$9.manifest,
10268
10268
  capabilities: [
10269
- ...base$8.manifest.capabilities,
10269
+ ...base$9.manifest.capabilities,
10270
10270
  {
10271
10271
  name: "voices.clone_instant",
10272
10272
  class: "mutation",
@@ -10377,7 +10377,7 @@ const elevenlabsConnector = {
10377
10377
  ]
10378
10378
  },
10379
10379
  async executeRead(inv) {
10380
- if (inv.capabilityName !== "speech_to_text") return base$8.executeRead(inv);
10380
+ if (inv.capabilityName !== "speech_to_text") return base$9.executeRead(inv);
10381
10381
  const audioUrl = httpsUrl(inv.args.audioUrl, "audioUrl");
10382
10382
  const form = new FormData();
10383
10383
  form.append("model_id", "scribe_v1");
@@ -10445,7 +10445,7 @@ const elevenlabsConnector = {
10445
10445
  idempotentReplay: false
10446
10446
  };
10447
10447
  }
10448
- return base$8.executeMutation(inv);
10448
+ return base$9.executeMutation(inv);
10449
10449
  }
10450
10450
  };
10451
10451
  function invalid(message) {
@@ -51287,7 +51287,7 @@ function mutation$2(name, description, properties, required, path, body) {
51287
51287
  }
51288
51288
  };
51289
51289
  }
51290
- const base$7 = declarativeRestConnector({
51290
+ const base$8 = declarativeRestConnector({
51291
51291
  kind: "meta-ads",
51292
51292
  displayName: "Meta Ads",
51293
51293
  description: "Manage Facebook and Instagram paid traffic campaigns, bounded budgets, ad sets, link creatives, delivery status and insights.",
@@ -51591,9 +51591,9 @@ function prepare$2(inv) {
51591
51591
  };
51592
51592
  }
51593
51593
  const metaAdsConnector = {
51594
- ...base$7,
51594
+ ...base$8,
51595
51595
  async executeRead(inv) {
51596
- const result = await base$7.executeRead(prepare$2(inv));
51596
+ const result = await base$8.executeRead(prepare$2(inv));
51597
51597
  if (isPlainRecord(result.data) && isPlainRecord(result.data.paging)) {
51598
51598
  const { next: _next, previous: _previous, ...paging } = result.data.paging;
51599
51599
  return {
@@ -51607,7 +51607,7 @@ const metaAdsConnector = {
51607
51607
  return result;
51608
51608
  },
51609
51609
  async executeMutation(inv) {
51610
- const result = await base$7.executeMutation(prepare$2(inv));
51610
+ const result = await base$8.executeMutation(prepare$2(inv));
51611
51611
  if (result.status !== "committed") return result;
51612
51612
  const data = result.data;
51613
51613
  if (!(isPlainRecord(data) && !("error" in data) && (inv.capabilityName.includes(".create") ? typeof data.id === "string" && data.id.trim().length > 0 : data.success === true))) throw new Error("meta-ads: missing native mutation receipt; reconcile provider state before retrying");
@@ -51670,7 +51670,7 @@ function write$5(name, description, path, properties, required, body, method = "
51670
51670
  }
51671
51671
  };
51672
51672
  }
51673
- const base$6 = declarativeRestConnector({
51673
+ const base$7 = declarativeRestConnector({
51674
51674
  kind: "x-ads",
51675
51675
  displayName: "X Ads",
51676
51676
  description: "Manage X paid campaigns with total budgets, scheduled line items, targeting, promoted posts, and spend reports.",
@@ -51948,7 +51948,7 @@ const base$6 = declarativeRestConnector({
51948
51948
  ]
51949
51949
  });
51950
51950
  const xAdsConnector = {
51951
- ...base$6,
51951
+ ...base$7,
51952
51952
  async executeMutation(inv) {
51953
51953
  for (const key of [
51954
51954
  "totalBudgetMicros",
@@ -51957,7 +51957,7 @@ const xAdsConnector = {
51957
51957
  ]) if (inv.args[key] !== void 0 && (typeof inv.args[key] !== "string" || !/^[1-9][0-9]*$/.test(inv.args[key]))) throw new Error(`x-ads: ${key} must be positive integer microcurrency`);
51958
51958
  if (typeof inv.args.dailyBudgetMicros === "string" && typeof inv.args.totalBudgetMicros === "string" && BigInt(inv.args.dailyBudgetMicros) > BigInt(inv.args.totalBudgetMicros)) throw new Error("x-ads: daily budget exceeds total budget");
51959
51959
  if (inv.capabilityName === "lineItems.createTraffic" && !(typeof inv.args.startTime === "string" && typeof inv.args.endTime === "string" && Date.parse(inv.args.endTime) > Date.parse(inv.args.startTime))) throw new Error("x-ads: endTime must be after startTime");
51960
- const result = await base$6.executeMutation(inv);
51960
+ const result = await base$7.executeMutation(inv);
51961
51961
  if (result.status === "committed") {
51962
51962
  const envelope = result.data;
51963
51963
  const records = isPlainRecord(envelope) ? Array.isArray(envelope.data) ? envelope.data : [envelope.data] : [];
@@ -52032,7 +52032,7 @@ function mutation$1(name, description, properties, required, path, body) {
52032
52032
  }
52033
52033
  };
52034
52034
  }
52035
- const base$5 = declarativeRestConnector({
52035
+ const base$6 = declarativeRestConnector({
52036
52036
  kind: "tiktok-ads",
52037
52037
  displayName: "TikTok Ads",
52038
52038
  description: "Operate TikTok Marketing API traffic campaigns, lifetime budgets, targeted ad groups, video ads and paid performance reports.",
@@ -52471,18 +52471,18 @@ async function uploadVideo(inv) {
52471
52471
  };
52472
52472
  }
52473
52473
  const tiktokAdsConnector = {
52474
- ...base$5,
52474
+ ...base$6,
52475
52475
  async executeRead(inv) {
52476
52476
  if (inv.capabilityName === "advertisers.list") return discover(inv);
52477
52477
  credentials(inv.source.credentials);
52478
- const result = await base$5.executeRead(prepare$1(inv));
52478
+ const result = await base$6.executeRead(prepare$1(inv));
52479
52479
  assertEnvelope$1(result.data);
52480
52480
  return result;
52481
52481
  },
52482
52482
  async executeMutation(inv) {
52483
52483
  if (inv.capabilityName === "videos.uploadFromUrl") return uploadVideo(inv);
52484
52484
  credentials(inv.source.credentials);
52485
- const result = await base$5.executeMutation(prepare$1(inv));
52485
+ const result = await base$6.executeMutation(prepare$1(inv));
52486
52486
  if (result.status === "committed") assertMutationReceipt$1(result.data, inv.capabilityName);
52487
52487
  return result;
52488
52488
  },
@@ -52643,7 +52643,7 @@ function write$4(name, description, path, properties, required, body, create = f
52643
52643
  }
52644
52644
  };
52645
52645
  }
52646
- const base$4 = declarativeRestConnector({
52646
+ const base$5 = declarativeRestConnector({
52647
52647
  kind: "linkedin-ads",
52648
52648
  displayName: "LinkedIn Ads",
52649
52649
  description: "Discover advertiser accounts, prepare lifetime-budget sponsored campaigns, target professional audiences, sponsor existing posts, and measure results.",
@@ -52979,7 +52979,7 @@ const base$4 = declarativeRestConnector({
52979
52979
  ]
52980
52980
  });
52981
52981
  const linkedinAdsConnector = {
52982
- ...base$4,
52982
+ ...base$5,
52983
52983
  async executeMutation(inv) {
52984
52984
  for (const key of ["totalBudget", "bidAmount"]) if (inv.args[key] !== void 0 && (typeof inv.args[key] !== "string" || !new RegExp(money$3.pattern).test(inv.args[key]))) throw new Error(`linkedin-ads: ${key} must be positive decimal currency`);
52985
52985
  if (inv.capabilityName === "campaignGroups.create" || inv.capabilityName === "campaigns.createSponsored") {
@@ -52992,7 +52992,7 @@ const linkedinAdsConnector = {
52992
52992
  targetingCriteria: nativeTargeting(inv.args.targetingCriteria)
52993
52993
  }
52994
52994
  };
52995
- const result = await base$4.executeMutation(inv);
52995
+ const result = await base$5.executeMutation(inv);
52996
52996
  if (result.status === "committed") {
52997
52997
  if ([
52998
52998
  "campaignGroups.create",
@@ -53077,7 +53077,7 @@ function write$3(name, description, path, properties, required, data, method = "
53077
53077
  }
53078
53078
  };
53079
53079
  }
53080
- const base$3 = declarativeRestConnector({
53080
+ const base$4 = declarativeRestConnector({
53081
53081
  kind: "reddit-ads",
53082
53082
  displayName: "Reddit Ads",
53083
53083
  description: "Prepare lifetime-budget Reddit traffic campaigns, target communities and geographies, create ad creatives, launch or pause, and measure spend and conversions.",
@@ -53432,13 +53432,13 @@ const base$3 = declarativeRestConnector({
53432
53432
  ]
53433
53433
  });
53434
53434
  const redditAdsConnector = {
53435
- ...base$3,
53435
+ ...base$4,
53436
53436
  async executeMutation(inv) {
53437
53437
  if (inv.args.totalBudgetMicros !== void 0 && !(typeof inv.args.totalBudgetMicros === "number" && Number.isSafeInteger(inv.args.totalBudgetMicros) && Number(inv.args.totalBudgetMicros) > 0)) throw new Error("reddit-ads: totalBudgetMicros must be positive safe integer microcurrency");
53438
53438
  if (inv.capabilityName === "campaigns.createTraffic" || inv.capabilityName === "adGroups.createTraffic") {
53439
53439
  if (!(typeof inv.args.startTime === "string" && typeof inv.args.endTime === "string" && Date.parse(inv.args.endTime) > Date.parse(inv.args.startTime))) throw new Error("reddit-ads: endTime must be after startTime");
53440
53440
  }
53441
- const result = await base$3.executeMutation(inv);
53441
+ const result = await base$4.executeMutation(inv);
53442
53442
  if (result.status === "committed") {
53443
53443
  const envelope = result.data;
53444
53444
  if (!isPlainRecord(envelope) || envelope.error || envelope.errors || !isPlainRecord(envelope.data) || typeof envelope.data.id !== "string" || !envelope.data.id) throw new Error("reddit-ads: missing native mutation receipt or provider error; reconcile state before retrying");
@@ -53506,7 +53506,7 @@ function mutation(name, description, properties, required, path, body) {
53506
53506
  }
53507
53507
  };
53508
53508
  }
53509
- const base$2 = declarativeRestConnector({
53509
+ const base$3 = declarativeRestConnector({
53510
53510
  kind: "snapchat-ads",
53511
53511
  displayName: "Snapchat Ads",
53512
53512
  description: "Create bounded Snapchat campaigns, targeted ad squads, uploaded media and website creatives; control delivery and read spend and conversions.",
@@ -53877,21 +53877,21 @@ async function upload(inv) {
53877
53877
  };
53878
53878
  }
53879
53879
  const snapchatAdsConnector = {
53880
- ...base$2,
53880
+ ...base$3,
53881
53881
  async executeRead(inv) {
53882
- const result = await base$2.executeRead(prepare(inv));
53882
+ const result = await base$3.executeRead(prepare(inv));
53883
53883
  assertEnvelope(result.data);
53884
53884
  return result;
53885
53885
  },
53886
53886
  async executeMutation(inv) {
53887
53887
  if (inv.capabilityName === "media.upload") return upload(inv);
53888
- const result = await base$2.executeMutation(prepare(inv));
53888
+ const result = await base$3.executeMutation(prepare(inv));
53889
53889
  if (result.status === "committed") assertMutationReceipt(result.data, inv.capabilityName);
53890
53890
  return result;
53891
53891
  },
53892
53892
  async test(source) {
53893
53893
  try {
53894
- assertEnvelope((await base$2.executeRead({
53894
+ assertEnvelope((await base$3.executeRead({
53895
53895
  source,
53896
53896
  capabilityName: "accounts.list",
53897
53897
  args: {},
@@ -185587,7 +185587,7 @@ const webscrapingAiConnector = declarativeRestConnector({
185587
185587
  });
185588
185588
  //#endregion
185589
185589
  //#region src/connectors/adapters/whatsapp.ts
185590
- const whatsappConnector = declarativeRestConnector({
185590
+ const base$2 = declarativeRestConnector({
185591
185591
  kind: "whatsapp",
185592
185592
  displayName: "WhatsApp Business",
185593
185593
  description: "Send messages, media, and templates via WhatsApp Business API.",
@@ -185597,10 +185597,11 @@ const whatsappConnector = declarativeRestConnector({
185597
185597
  },
185598
185598
  category: "comms",
185599
185599
  defaultConsistencyModel: "authoritative",
185600
- baseUrl: "https://graph.instagram.com/v21.0",
185600
+ baseUrl: "https://graph.facebook.com/v21.0",
185601
185601
  test: {
185602
185602
  method: "GET",
185603
- path: "/{businessAccountId}"
185603
+ path: "/me",
185604
+ query: { fields: "id" }
185604
185605
  },
185605
185606
  capabilities: [
185606
185607
  {
@@ -185618,20 +185619,22 @@ const whatsappConnector = declarativeRestConnector({
185618
185619
  type: "string",
185619
185620
  description: "Message text"
185620
185621
  },
185621
- businessAccountId: {
185622
+ phoneNumberId: {
185622
185623
  type: "string",
185623
- description: "Business Account ID"
185624
+ pattern: "^[0-9]+$",
185625
+ maxLength: 64,
185626
+ description: "Meta phone number ID for the sender, not a WhatsApp Business Account (WABA) ID."
185624
185627
  }
185625
185628
  },
185626
185629
  required: [
185627
185630
  "to",
185628
185631
  "text",
185629
- "businessAccountId"
185632
+ "phoneNumberId"
185630
185633
  ]
185631
185634
  },
185632
185635
  request: {
185633
185636
  method: "POST",
185634
- path: "/{businessAccountId}/messages",
185637
+ path: "/{phoneNumberId}/messages",
185635
185638
  body: {
185636
185639
  messaging_product: "whatsapp",
185637
185640
  recipient_type: "individual",
@@ -185675,21 +185678,23 @@ const whatsappConnector = declarativeRestConnector({
185675
185678
  type: "string",
185676
185679
  description: "Filename (for documents)"
185677
185680
  },
185678
- businessAccountId: {
185681
+ phoneNumberId: {
185679
185682
  type: "string",
185680
- description: "Business Account ID"
185683
+ pattern: "^[0-9]+$",
185684
+ maxLength: 64,
185685
+ description: "Meta phone number ID for the sender, not a WhatsApp Business Account (WABA) ID."
185681
185686
  }
185682
185687
  },
185683
185688
  required: [
185684
185689
  "to",
185685
185690
  "type",
185686
185691
  "media",
185687
- "businessAccountId"
185692
+ "phoneNumberId"
185688
185693
  ]
185689
185694
  },
185690
185695
  request: {
185691
185696
  method: "POST",
185692
- path: "/{businessAccountId}/messages",
185697
+ path: "/{phoneNumberId}/messages",
185693
185698
  body: {
185694
185699
  messaging_product: "whatsapp",
185695
185700
  recipient_type: "individual",
@@ -185727,21 +185732,23 @@ const whatsappConnector = declarativeRestConnector({
185727
185732
  type: "array",
185728
185733
  description: "Template parameter values"
185729
185734
  },
185730
- businessAccountId: {
185735
+ phoneNumberId: {
185731
185736
  type: "string",
185732
- description: "Business Account ID"
185737
+ pattern: "^[0-9]+$",
185738
+ maxLength: 64,
185739
+ description: "Meta phone number ID for the sender, not a WhatsApp Business Account (WABA) ID."
185733
185740
  }
185734
185741
  },
185735
185742
  required: [
185736
185743
  "to",
185737
185744
  "templateName",
185738
185745
  "language",
185739
- "businessAccountId"
185746
+ "phoneNumberId"
185740
185747
  ]
185741
185748
  },
185742
185749
  request: {
185743
185750
  method: "POST",
185744
- path: "/{businessAccountId}/messages",
185751
+ path: "/{phoneNumberId}/messages",
185745
185752
  body: {
185746
185753
  messaging_product: "whatsapp",
185747
185754
  to: "{to}",
@@ -185774,21 +185781,23 @@ const whatsappConnector = declarativeRestConnector({
185774
185781
  type: "string",
185775
185782
  description: "WAMID of the message to reply to"
185776
185783
  },
185777
- businessAccountId: {
185784
+ phoneNumberId: {
185778
185785
  type: "string",
185779
- description: "Business Account ID"
185786
+ pattern: "^[0-9]+$",
185787
+ maxLength: 64,
185788
+ description: "Meta phone number ID for the sender, not a WhatsApp Business Account (WABA) ID."
185780
185789
  }
185781
185790
  },
185782
185791
  required: [
185783
185792
  "to",
185784
185793
  "text",
185785
185794
  "replyToMessageId",
185786
- "businessAccountId"
185795
+ "phoneNumberId"
185787
185796
  ]
185788
185797
  },
185789
185798
  request: {
185790
185799
  method: "POST",
185791
- path: "/{businessAccountId}/messages",
185800
+ path: "/{phoneNumberId}/messages",
185792
185801
  body: {
185793
185802
  messaging_product: "whatsapp",
185794
185803
  recipient_type: "individual",
@@ -185820,21 +185829,23 @@ const whatsappConnector = declarativeRestConnector({
185820
185829
  type: "string",
185821
185830
  description: "Emoji to react with (empty string removes existing reaction)"
185822
185831
  },
185823
- businessAccountId: {
185832
+ phoneNumberId: {
185824
185833
  type: "string",
185825
- description: "Business Account ID"
185834
+ pattern: "^[0-9]+$",
185835
+ maxLength: 64,
185836
+ description: "Meta phone number ID for the sender, not a WhatsApp Business Account (WABA) ID."
185826
185837
  }
185827
185838
  },
185828
185839
  required: [
185829
185840
  "to",
185830
185841
  "messageId",
185831
185842
  "emoji",
185832
- "businessAccountId"
185843
+ "phoneNumberId"
185833
185844
  ]
185834
185845
  },
185835
185846
  request: {
185836
185847
  method: "POST",
185837
- path: "/{businessAccountId}/messages",
185848
+ path: "/{phoneNumberId}/messages",
185838
185849
  body: {
185839
185850
  messaging_product: "whatsapp",
185840
185851
  recipient_type: "individual",
@@ -185902,6 +185913,23 @@ const whatsappConnector = declarativeRestConnector({
185902
185913
  }
185903
185914
  ]
185904
185915
  });
185916
+ const sendCapabilities = /* @__PURE__ */ new Set([
185917
+ "messages.send",
185918
+ "media.send",
185919
+ "template.send",
185920
+ "messages.reply",
185921
+ "messages.react"
185922
+ ]);
185923
+ const whatsappConnector = {
185924
+ ...base$2,
185925
+ async executeMutation(inv) {
185926
+ if (sendCapabilities.has(inv.capabilityName)) {
185927
+ const { phoneNumberId, businessAccountId } = inv.args;
185928
+ if (businessAccountId !== void 0 || typeof phoneNumberId !== "string" || !/^[0-9]{1,64}$/.test(phoneNumberId)) throw new Error("WhatsApp sends require phoneNumberId, the Meta sender phone number ID; businessAccountId (WABA ID) is not a sending ID");
185929
+ }
185930
+ return base$2.executeMutation(inv);
185931
+ }
185932
+ };
185905
185933
  //#endregion
185906
185934
  //#region src/connectors/adapters/whatsscale.ts
185907
185935
  const whatsscaleConnector = declarativeRestConnector({
@@ -194298,4 +194326,4 @@ var adapters_exports = /* @__PURE__ */ __exportAll({
194298
194326
  //#endregion
194299
194327
  export { uscreenConnector as $, openaiConnector as $a, harvestConnector as $c, clearoutphoneConnector as $d, campaignMonitorConnector as $i, checkoutConnector as $l, mailerooConnector as $n, zohoBooksConnector as $o, mailercheckConnector as $r, parquetFilesConnector as $s, postizConnector as $t, snowflakeConnector as $u, bettercontactConnector as A, altTextAiConnector as Aa, microsoftCalendar as Ac, giftbitConnector as Ad, copyAiConnector as Ai, classifyGoogleError as Al, instasentConnector as An, digitalOceanConnector as Ao, joggAiConnector as Ar, sageIntacctConnector as As, sendinblueConnector as At, avomaConnector as Au, woocommerceConnector as B, airOpsConnector as Ba, kafkaConnector as Bc, echowinConnector as Bd, clockifyConnector as Bi, filloutFormsConnector as Bl, gptzeroDetectAiConnector as Bn, smartleadConnector as Bo, hashiCorpVaultConnector as Br, rssConnector as Bs, retableConnector as Bt, amazonEventBridgeConnector as Bu, serperConnector as C, apitableConnector as Ca, microsoftPowerBiConnector as Cc, clicdataConnector as Cd, oktaConnector as Cf, descriptConnector as Ci, metaAdsConnector as Cl, nocodbConnector as Cn, createMySqlConnector as Co, koFiConnector as Cr, todoistConnector as Cs, simplybookmeConnector as Ct, backblazeConnector as Cu, snovIoConnector as D, amazonTextractConnector as Da, microsoftExcel365Connector as Dc, adpConnector as Dd, customgptConnector as Di, gorgiasConnector as Dl, loopsConnector as Dn, googleBigqueryConnector as Do, kimaiConnector as Dr, stripePackConnector as Ds, serviceNowConnector as Dt, azureBlobStorageConnector as Du, wizaConnector as E, apitemplateIoConnector as Ea, microsoftGraph as Ec, bexioConnector as Ed, phonyConnector as Ef, deepseekConnector as Ei, googleCalendar as El, mailchainConnector as En, hightouchConnector as Eo, kissflowConnector as Er, tallyConnector as Es, signrequestConnector as Et, azureEventGridConnector as Eu, zeplinConnector as F, aipriseConnector as Fa, linkedinConnector as Fc, fellowConnector as Fd, cometapiConnector as Fi, frontConnector as Fl, humeAiConnector as Fn, TELEGRAM_FILE_DOWNLOAD_ROOT as Fo, instantlyAiConnector as Fr, savvycalConnector as Fs, sardisConnector as Ft, amazonSqsConnector as Fu, webscrapingAiConnector as G, bamboohrConnector as Ga, ironcladConnector as Gc, detectingAiConnector as Gd, chatbaseConnector as Gi, fathomConnector as Gl, missiveConnector as Gn, lemlistConnector as Go, greenptConnector as Gr, postgresConnector as Gs, raiaAiConnector as Gt, zuoraConnector as Gu, wonderchatConnector as H, activecampaignConnector as Ha, justcallConnector as Hc, docsbotConnector as Hd, chatnodeConnector as Hi, figjamConnector as Hl, glideConnector as Hn, outreachConnector as Ho, hastewireConnector as Hr, rampConnector as Hs, reoonVerifierConnector as Ht, affinityConnector as Hu, youcanbookmeConnector as I, acumbamailConnector as Ia, linearConnector as Ic, featheryConnector as Id, cohereConnector as Ii, freshsalesConnector as Il, hedyConnector as In, telegramConnector as Io, huggingFaceConnector as Ir, saleorConnector as Is, saasticConnector as It, amazonSnsConnector as Iu, vtigerConnector as J, weaviateConnector as Ja, instagramBusinessConnector as Jc, couchbaseConnector as Jd, cannyConnector as Ji, dropboxConnector as Jl, mindeeConnector as Jn, brazeConnector as Jo, ghostcmsConnector as Jr, createRedisConnector as Js, pushoverConnector as Jt, wootricConnector as Ju, whatConvertsConnector as K, qdrantConnector as Ka, invoiceninjaConnector as Kc, deepgramConnector as Kd, chatlingConnector as Ki, etsyConnector as Kl, mixpanelConnector as Kn, klaviyoConnector as Ko, googleSearchConnector as Kr, createRedshiftConnector as Ks, quadernoConnector as Kt, zoominfoConnector as Ku, wufooConnector as L, aidbaseConnector as La, lemonSqueezyConnector as Lc, everhourConnector as Ld, cognitoFormsConnector as Li, freshdeskConnector as Ll, heartbeatConnector as Ln, mattermostConnector as Lo, influencersClubConnector as Lr, createSftpConnector as Ls, runwareConnector as Lt, amazonS3Connector as Lu, lagrowthmachineConnector as M, airtopConnector as Ma, microsoft365PeopleConnector as Mc, genderApiConnector as Md, convertkitConnector as Mi, googleApiError as Ml, imapConnector as Mn, datadogConnector as Mo, jiraDataCenterConnector as Mr, signNowConnector as Ms, seekTableConnector as Mt, auth0Connector as Mu, heyreachConnector as N, amazonSecretsManagerConnector as Na, makeConnector as Nc, gammaConnector as Nd, crispConnector as Ni, googleErrorReason as Nl, ibmCognoseConnector as Nn, baserowConnector as No, jinaAiConnector as Nr, shippoConnector as Ns, scrapelessConnector as Nt, attioConnector as Nu, findymailConnector as O, amazonSesConnector as Oa, microsoftDynamicsCrmConnector as Oc, adobeCreativeCloudConnector as Od, cryptolensConnector as Oi, gongConnector as Ol, knockConnector as On, firebaseConnector as Oo, kapsoConnector as Or, squareConnector as Os, serpstatConnector as Ot, azureAdConnector as Ou, amplemarketConnector as P, amazonBedrockConnector as Pa, createLinkedinConnector as Pc, flowParserConnector as Pd, comfyicuConnector as Pi, googleTestFailureReason as Pl, hystructConnector as Pn, airtableConnector as Po, imageRouterConnector as Pr, sharepoint as Ps, scrapegraphaiConnector as Pt, asanaConnector as Pu, vboutConnector as Q, anthropicConnector as Qa, helpscoutConnector as Qc, clickfunnelsConnector as Qd, braveSearchConnector as Qi, chessComConnector as Ql, messagebirdConnector as Qn, zohoCampaignsConnector as Qo, frameConnector as Qr, quickbooksConnector as Qs, posthogConnector as Qt, teableConnector as Qu, writesonicBulkConnector as R, afforaiConnector as Ra, leadConnectorConnector as Rc, excelFilesConnector as Rd, clearoutConnector as Ri, folkConnector as Rl, griptapeConnector as Rn, matrixConnector as Ro, housecallProConnector as Rr, sftpConnector as Rs, robollyConnector as Rt, amazonLambdaConnector as Ru, warmlyConnector as S, aminosConnector as Sa, microsoftTodoConnector as Sc, clioConnector as Sd, clientCredentialsRestConnector as Sf, datocmsConnector as Si, xAdsConnector as Sl, ntfyConnector as Sn, segmentConnector as So, kudosityConnector as Sr, trelloConnector as Ss, smartsheetConnector as St, biginByZohoConnector as Su, commonRoomConnector as T, ampecoConnector as Ta, microsoftTeams as Tc, bigcommerceConnector as Td, createPhonyConnector as Tf, denserAiConnector as Ti, googleAnalyticsConnector as Tl, medullarConnector as Tn, metabaseConnector as To, klentyConnector as Tr, ticktickConnector as Ts, shortIoConnector as Tt, azureServiceBusConnector as Tu, whatsscaleConnector as U, smooveConnector as Ua, jotformConnector as Uc, duckdbConnector as Ud, chatDataConnector as Ui, firefliesAiConnector as Ul, googleVertexaiConnector as Un, marketoConnector as Uo, guideliteConnector as Ur, recallAiConnector as Us, reachinboxConnector as Ut, aircallConnector as Uu, woodpeckerConnector as V, kustomerConnector as Va, publicKafkaSocketFactory as Vc, dripConnector as Vd, clockodoConnector as Vi, figmaConnector as Vl, gotifyConnector as Vn, salesloftConnector as Vo, heygenConnector as Vr, ringcentralConnector as Vs, replyIoConnector as Vt, amplitudeConnector as Vu, whatsappConnector as W, greenhouseConnector as Wa, jiraCloudConnector as Wc, digitalPilotConnector as Wd, chartlyConnector as Wi, fireberryConnector as Wl, exaConnector as Wn, mailchimpConnector as Wo, greipConnector as Wr, createPostgresConnector as Ws, rapidtextAiConnector as Wt, adobeSignConnector as Wu, vlmRunConnector as X, geminiConnector as Xa, httpConnector as Xc, contextualAiConnector as Xd, certopusConnector as Xi, docusignConnector as Xl, memConnector as Xn, zohoMailConnector as Xo, gameballConnector as Xr, createRabbitMqConnector as Xs, productboardConnector as Xt, vercelConnector as Xu, vtexConnector as Y, huggingfaceConnector as Ya, intercomConnector as Yc, contiguityConnector as Yd, chainalysisApiConnector as Yi, dialpadConnector as Yl, millionverifierConnector as Yn, apolloConnector as Yo, freshserviceConnector as Yr, redisConnector as Ys, proxycurlConnector as Yt, videoaskConnector as Yu, vidlab7Connector as Z, googleGeminiConnector as Za, hubspot as Zc, codyConnector as Zd, captainDataConnector as Zi, docuseal as Zl, mauticConnector as Zn, zohoInvoiceConnector as Zo, fragmentConnector as Zr, rabbitMqConnector as Zs, predictLeadsConnector as Zt, tenzoConnector as Zu, phantombusterConnector as _, ashbyConnector as _a, mondayConnector as _c, formstackConnector as _d, aianswerConnector as _f, dubConnector as _i, pinterestAdsConnector as _l, opportifyConnector as _n, neverbounceConnector as _o, linkupConnector as _r, tiktokConnector as _s, swarmnodeConnector as _t, billplzConnector as _u, linqConnector as a, bonjoroConnector as aa, outlookMail as ac, pushbulletConnector as ad, csvFilesConnector as af, facebookLeadsConnector as ai, googleSheets as al, perplexityAiConnector as an, quickzuConnector as ao, mailerLiteConnector as ar, zoomConnector as as, twinLabsConnector as at, copperConnector as au, crustdataConnector as b, semrushConnector as ba, meetgeekAiConnector as bc, constantContactConnector as bd, pingIdentityConnector as bf, documergeConnector as bi, linkedinAdsConnector as bl, omniCoConnector as bn, builtwithConnector as bo, kommoConnector as br, typeformConnector as bs, smsmodeConnector as bt, baremetricsConnector as bu, factorsAiConnector as c, bettermodeConnector as ca, openPhoneConnector as cc, opsgenieConnector as cd, buttondownConnector as cf, firecrawlConnector as ci, googleMeetConnector as cl, parseurConnector as cn, githubConnector as co, logsnagConnector as cr, youtubeDataConnector as cs, togglTrackConnector as ct, codaConnector as cu, signwellConnector as d, barcodeLookupConnector as da, n8nConnector as dc, lightfunnelsConnector as dd, base44Connector as df, emailoctopusConnector as di, googleDocs as dl, pastefyConnector as dn, gtmAgentConnector as do, magicalApiConnector as dr, webflowConnector as ds, textcortexAiConnector as dt, clickupConnector as du, brilliantDirectoriesConnector as ea, pipedriveConnector as ec, sendpulseConnector as ed, claudeConnector as ef, fountainConnector as ei, hellosign as el, pollybotAiConnector as en, sentryConnector as eo, mailgunConnector as er, zohoCrmConnector as es, umamiConnector as et, circleConnector as eu, polytomicConnector as f, autocallsConnector as fa, notion as fc, leverConnector as fd, bannerbearConnector as ff, dustConnector as fi, googleContactsConnector as fl, paperformConnector as fn, webhookConnector as fo, llmrailsConnector as fr, xeroConnector as fs, telnyxConnector as ft, closeConnector as fu, zenrowsConnector as g, assemblyaiConnector as ga, mongodbConnector as gc, freeAgentConnector as gd, airparserConnector as gf, documentproConnector as gi, createMicrosoftAdsConnector as gl, openmicAiConnector as gn, theirstackConnector as go, letsCalendarConnector as gr, tiktok as gs, stripeConnector as gt, calComConnector as gu, oceanIoConnector as h, avianConnector as ha, createMongoDbConnector as hc, giteaConnector as hd, anyhookWebsocketConnector as hf, elasticEmailConnector as hi, createAmazonAdsConnector as hl, opnformConnector as hn, zerobounceConnector as ho, linkaConnector as hr, twilioSmsConnector as hs, systemeIoConnector as ht, calCom as hu, linqWhatsappConnector as i, blueskyConnector as ia, pandadoc as ic, redditConnector as id, chainAwareConnector as if, flowiseConnector as ii, googleSlidesConnector as il, personalAiConnector as in, zagomailConnector as io, luxuryPresenceConnector as ir, zohoBookingsConnector as is, twilioConnector as it, chargebeeConnector as iu, saleshandyConnector as j, alaiConnector as ja, microsoft365PlannerConnector as jc, generatebannersConnector as jd, dashworksConnector as ji, classifyGoogleReason as jl, insightoAiConnector as jn, discourseConnector as jo, justInvoiceConnector as jr, slack as js, skyprepConnector as jt, acuitySchedulingConnector as ju, contactoutConnector as k, alttextifyConnector as ka, microsoftDynamics365BusinessCentralConnector as kc, modelslabConnector as kd, datafuelConnector as ki, gmail as kl, kallabotAiConnector as kn, clicksendConnector as ko, kizeoFormsConnector as kr, shopifyConnector as ks, senjaConnector as kt, avalaraConnector as ku, modjoConnector as l, beamerConnector as la, ninjapipeConnector as lc, niftyConnector as ld, bikaConnector as lf, esignaturesConnector as li, googleForms as ll, paywhirlConnector as ln, slackEventsConnector as lo, logrocketConnector as lr, wrikeConnector as ls, timelinesAiConnector as lt, cloudinaryConnector as lu, seamlessAiConnector as m, asknewsConnector as ma, mycaseConnector as mc, gustoConnector as md, apifyConnector as mf, edenAiConnector as mi, googleCloudStorageConnector as ml, orimonConnector as mn, resolveConnectorAdapterFactoryOptions as mo, localaiConnector as mr, voucheryIoConnector as ms, tableauConnector as mt, calendlyConnector as mu, sendblueConnector as n, bookedinConnector as na, plaidConnector as nc, ripplingConnector as nd, chatAidConnector as nf, formbricksConnector as ni, googlechatConnector as nl, plausibleConnector as nn, sendgridConnector as no, matomoConnector as nr, pricelabsConnector as ns, vapiConnector as nt, taxjarConnector as nu, inkboxConnector as o, bitlyConnector as oa, oneSpanSignConnector as oc, paychexConnector as od, cartloomConnector as of, enrichlayerConnector as oi, googleSearchConsoleConnector as ol, peekshotConnector as on, facebookPagesConnector as oo, lushaConnector as or, zendeskConnector as os, typefullyConnector as ot, contentfulConnector as ou, usergemsConnector as p, azureCommunicationServicesConnector as pa, notionConnector as pc, instaChartsConnector as pd, askHandleConnector as pf, easyPeasyAiConnector as pi, googlePubSubConnector as pl, oracleDatabaseConnector as pn, CONNECTOR_ADAPTER_FACTORIES as po, lobstermailConnector as pr, whatsappBusiness as ps, talkableConnector as pt, capsuleCrmConnector as pu, wafeqConnector as q, pineconeConnector as qa, insightlyConnector as qc, dappierConnector as qd, chargekeepConnector as qi, ebayConnector as ql, mixmaxConnector as qn, customerIoConnector as qo, gistlyConnector as qr, redshiftConnector as qs, qawafelConnector as qt, workdayConnector as qu, resendConnector as r, bolnaConnector as ra, paddleConnector as rc, reddit as rd, chaindeskConnector as rf, flipandoConnector as ri, googleTasksConnector as rl, placidConnector as rn, zendeskSellConnector as ro, lucidyaConnector as rr, cloudbedsConnector as rs, upgradechatConnector as rt, recurlyConnector as ru, getresponseConnector as s, blandAiConnector as sa, oneDrive as sc, pagerdutyConnector as sd, cambAiConnector as sf, fathomAnalyticsConnector as si, googleMyBusinessConnector as sl, pdfmonkeyConnector as sn, gitlabConnector as so, loftyConnector as sr, zapierConnector as ss, totalcmsConnector as st, confluenceConnector as su, adapters_exports as t, browseAiConnector as ta, pipedreamConnector as tc, sanityConnector as td, chatsistantConnector as tf, foreplayCoConnector as ti, granolaConnector as tl, pocketbaseConnector as tn, postmarkConnector as to, manychatConnector as tr, zohoDeskConnector as ts, validatedmailsConnector as tt, cashfreePaymentsConnector as tu, nooksConnector as u, azureOpenaiConnector as ua, netsuiteConnector as uc, netlifyConnector as ud, beehiivConnector as uf, emailitConnector as ui, googleDrive as ul, pinchPaymentsConnector as un, stripeWebhookReceiverConnector as uo, lokaliseConnector as ur, wordpressConnector as us, timeOpsConnector as ut, cloudflareConnector as uu, brightdataConnector as v, clayConnector as va, miroConnector as vc, discordConnector as vd, actualbudgetConnector as vf, dumplingAiConnector as vi, snapchatAdsConnector as vl, openRouterConnector as vn, hunterConnector as vo, lettaConnector as vr, twitter as vs, supadataConnector as vt, billComConnector as vu, leadfeederConnector as w, appfollowConnector as wa, microsoftOnenoteConnector as wc, canvaConnector as wd, declarativeRestConnector as wf, devinConnector as wi, googleAdsConnector as wl, mindStudioConnector as wn, mysqlConnector as wo, knackConnector as wr, tlDvConnector as ws, simplirouteConnector as wt, basecampConnector as wu, autoboundConnector as x, similarwebConnector as xa, mastodonConnector as xc, cloudconvertConnector as xd, oneloginConnector as xf, dittofeedConnector as xi, tiktokAdsConnector as xl, odooConnector as xn, supabaseConnector as xo, leapAiConnector as xr, twentyConnector as xs, smartsuiteConnector as xt, boxConnector as xu, leadmagicConnector as y, cognismConnector as ya, mollieConnector as yc, demandbaseConnector as yd, scimConnector as yf, doctlyConnector as yi, redditAdsConnector as yl, omnihrConnector as yn, fullenrichConnector as yo, leexiConnector as yr, twitterConnector as ys, socialkitConnector as yt, brexConnector as yu, workableConnector as z, agentxConnector as za, createKafkaConnector as zc, elevenlabsConnector as zd, cloutlyConnector as zi, flowluConnector as zl, gristConnector as zn, chatwootConnector as zo, heymarketSmsConnector as zr, salesforceConnector as zs, retellAiConnector as zt, amazonCloudWatchConnector as zu };
194300
194328
 
194301
- //# sourceMappingURL=adapters-CHzc3qI0.js.map
194329
+ //# sourceMappingURL=adapters-C4M7uzRR.js.map