@tangle-network/agent-integrations 0.53.14 → 0.53.16

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.
@@ -3770,6 +3770,124 @@ var auth0Connector = declarativeRestConnector({
3770
3770
  ]
3771
3771
  });
3772
3772
 
3773
+ // src/connectors/adapters/avoma.ts
3774
+ var avomaConnector = declarativeRestConnector({
3775
+ kind: "avoma",
3776
+ displayName: "Avoma",
3777
+ description: "Push completed dialer calls into Avoma and retrieve meeting transcripts and recording URLs.",
3778
+ auth: { kind: "api-key", hint: "Avoma API key sent as a Bearer token." },
3779
+ category: "calendar",
3780
+ defaultConsistencyModel: "authoritative",
3781
+ baseUrl: "https://api.avoma.com/v1",
3782
+ test: { method: "GET", path: "/meetings/", query: { page_size: "1" } },
3783
+ capabilities: [
3784
+ {
3785
+ name: "calls.create",
3786
+ class: "mutation",
3787
+ description: "Register a completed external-dialer call so Avoma can ingest its recording and create meeting intelligence.",
3788
+ parameters: {
3789
+ type: "object",
3790
+ properties: {
3791
+ external_id: { type: "string" },
3792
+ user_email: { type: "string" },
3793
+ source: { type: "string" },
3794
+ direction: { type: "string" },
3795
+ start_at: { type: "string" },
3796
+ end_at: { type: "string" },
3797
+ frm: { type: "string" },
3798
+ to: { type: "string" },
3799
+ frm_name: { type: "string" },
3800
+ to_name: { type: "string" },
3801
+ recording_url: { type: "string" },
3802
+ participants: {
3803
+ type: "array",
3804
+ items: {
3805
+ type: "object",
3806
+ properties: {
3807
+ name: { type: "string" },
3808
+ email: { type: "string" },
3809
+ crm_id: { type: "string" },
3810
+ crm_type: { type: "string" },
3811
+ crm_system: { type: "string" }
3812
+ },
3813
+ required: ["name", "email"]
3814
+ }
3815
+ },
3816
+ answered: { type: "boolean" },
3817
+ is_voicemail: { type: "boolean" },
3818
+ additional_details: { type: "string" }
3819
+ },
3820
+ required: [
3821
+ "external_id",
3822
+ "user_email",
3823
+ "source",
3824
+ "direction",
3825
+ "start_at",
3826
+ "frm",
3827
+ "to",
3828
+ "recording_url"
3829
+ ]
3830
+ },
3831
+ request: {
3832
+ method: "POST",
3833
+ path: "/calls/",
3834
+ body: {
3835
+ external_id: "{external_id}",
3836
+ user_email: "{user_email}",
3837
+ source: "{source}",
3838
+ direction: "{direction}",
3839
+ start_at: "{start_at}",
3840
+ end_at: "{end_at}",
3841
+ frm: "{frm}",
3842
+ to: "{to}",
3843
+ frm_name: "{frm_name}",
3844
+ to_name: "{to_name}",
3845
+ recording_url: "{recording_url}",
3846
+ participants: "{participants}",
3847
+ answered: "{answered}",
3848
+ is_voicemail: "{is_voicemail}",
3849
+ additional_details: "{additional_details}"
3850
+ }
3851
+ },
3852
+ cas: "native-idempotency",
3853
+ externalEffect: true
3854
+ },
3855
+ {
3856
+ name: "meetings.transcription.get",
3857
+ class: "read",
3858
+ description: "Fetch a speaker-attributed Avoma transcription by transcription UUID.",
3859
+ parameters: {
3860
+ type: "object",
3861
+ properties: {
3862
+ transcription_uuid: { type: "string" }
3863
+ },
3864
+ required: ["transcription_uuid"]
3865
+ },
3866
+ request: {
3867
+ method: "GET",
3868
+ path: "/transcriptions/{transcription_uuid}"
3869
+ }
3870
+ },
3871
+ {
3872
+ name: "meetings.recording.get",
3873
+ class: "read",
3874
+ description: "Fetch time-limited audio and video recording URLs for an Avoma meeting UUID.",
3875
+ parameters: {
3876
+ type: "object",
3877
+ properties: {
3878
+ meeting_uuid: { type: "string" }
3879
+ },
3880
+ required: ["meeting_uuid"]
3881
+ },
3882
+ request: {
3883
+ method: "GET",
3884
+ path: "/recordings/",
3885
+ query: { meeting_uuid: "{meeting_uuid}" }
3886
+ }
3887
+ }
3888
+ ]
3889
+ });
3890
+
3773
3891
  // src/connectors/adapters/azure-ad.ts
3774
3892
  var azureAdConnector = declarativeRestConnector({
3775
3893
  kind: "azure-ad",
@@ -10078,7 +10196,13 @@ var dropboxConnector = declarativeRestConnector({
10078
10196
  kind: "oauth2",
10079
10197
  authorizationUrl: "https://www.dropbox.com/oauth2/authorize",
10080
10198
  tokenUrl: "https://api.dropboxapi.com/oauth2/token",
10081
- scopes: ["account_info.read", "files.metadata.read", "sharing.read"],
10199
+ scopes: [
10200
+ "account_info.read",
10201
+ "files.metadata.read",
10202
+ "files.metadata.write",
10203
+ "sharing.read",
10204
+ "sharing.write"
10205
+ ],
10082
10206
  clientIdEnv: "DROPBOX_OAUTH_CLIENT_ID",
10083
10207
  clientSecretEnv: "DROPBOX_OAUTH_CLIENT_SECRET",
10084
10208
  extraAuthParams: { token_access_type: "offline" }
@@ -25438,6 +25562,122 @@ var mastodonConnector = declarativeRestConnector({
25438
25562
  ]
25439
25563
  });
25440
25564
 
25565
+ // src/connectors/adapters/meetgeek-ai.ts
25566
+ var meetgeekAiConnector = declarativeRestConnector({
25567
+ kind: "meetgeek-ai",
25568
+ displayName: "MeetGeek",
25569
+ description: "AI meeting assistant: list and inspect recorded meetings, pull transcripts, highlights, and summary insights, and upload new recordings for transcription.",
25570
+ auth: {
25571
+ kind: "api-key",
25572
+ hint: "MeetGeek API key \u2014 sent as `Authorization: Bearer <key>` against https://api.meetgeek.ai/v1."
25573
+ },
25574
+ category: "other",
25575
+ defaultConsistencyModel: "authoritative",
25576
+ baseUrl: "https://api.meetgeek.ai/v1",
25577
+ test: { method: "GET", path: "/teams" },
25578
+ capabilities: [
25579
+ {
25580
+ name: "meetings.list",
25581
+ class: "read",
25582
+ description: "List past meetings belonging to a MeetGeek team.",
25583
+ parameters: {
25584
+ type: "object",
25585
+ properties: {
25586
+ teamId: { type: "string", description: "MeetGeek team id." }
25587
+ },
25588
+ required: ["teamId"]
25589
+ },
25590
+ request: { method: "GET", path: "/teams/{teamId}/meetings" }
25591
+ },
25592
+ {
25593
+ name: "meetings.get",
25594
+ class: "read",
25595
+ description: "Return metadata for a single meeting by id (participants, host, duration, summary).",
25596
+ parameters: {
25597
+ type: "object",
25598
+ properties: {
25599
+ meetingId: { type: "string", description: "The MeetGeek meeting id." }
25600
+ },
25601
+ required: ["meetingId"]
25602
+ },
25603
+ request: { method: "GET", path: "/meetings/{meetingId}" }
25604
+ },
25605
+ {
25606
+ name: "meetings.transcript",
25607
+ class: "read",
25608
+ description: "Return the time-coded transcript for a meeting. The response is an array of utterances with speaker, start/end offsets, and text.",
25609
+ parameters: {
25610
+ type: "object",
25611
+ properties: {
25612
+ meetingId: { type: "string", description: "The MeetGeek meeting id." }
25613
+ },
25614
+ required: ["meetingId"]
25615
+ },
25616
+ request: { method: "GET", path: "/meetings/{meetingId}/transcript" }
25617
+ },
25618
+ {
25619
+ name: "meetings.highlights",
25620
+ class: "read",
25621
+ description: "Return the AI-generated highlights (key moments, action items, decisions) for a single meeting.",
25622
+ parameters: {
25623
+ type: "object",
25624
+ properties: {
25625
+ meetingId: { type: "string", description: "The MeetGeek meeting id." }
25626
+ },
25627
+ required: ["meetingId"]
25628
+ },
25629
+ request: { method: "GET", path: "/meetings/{meetingId}/highlights" }
25630
+ },
25631
+ {
25632
+ name: "meetings.summaryInsights",
25633
+ class: "read",
25634
+ description: "Return the summary and AI-generated insights for one MeetGeek meeting.",
25635
+ parameters: {
25636
+ type: "object",
25637
+ properties: {
25638
+ meetingId: { type: "string", description: "The MeetGeek meeting id." }
25639
+ },
25640
+ required: ["meetingId"]
25641
+ },
25642
+ request: { method: "GET", path: "/meetings/{meetingId}/summary" }
25643
+ },
25644
+ {
25645
+ name: "recordings.upload",
25646
+ class: "mutation",
25647
+ description: "Submit a recording for asynchronous transcription. MeetGeek fetches `downloadUrl` directly, so the URL must be publicly reachable (e.g. an S3 signed link). The response carries the queued meeting id you can poll via `meetings.get`.",
25648
+ parameters: {
25649
+ type: "object",
25650
+ properties: {
25651
+ downloadUrl: {
25652
+ type: "string",
25653
+ description: "Publicly reachable URL MeetGeek will GET to fetch the audio/video file. Required."
25654
+ },
25655
+ languageCode: {
25656
+ type: "string",
25657
+ description: "BCP-47 language code (e.g. en-US, es-ES, fr-FR)."
25658
+ },
25659
+ templateName: {
25660
+ type: "string",
25661
+ description: "Optional MeetGeek meeting template name used to drive analysis."
25662
+ }
25663
+ },
25664
+ required: ["downloadUrl"]
25665
+ },
25666
+ request: {
25667
+ method: "POST",
25668
+ path: "/upload",
25669
+ body: {
25670
+ download_url: "{downloadUrl}",
25671
+ language_code: "{languageCode}",
25672
+ template_name: "{templateName}"
25673
+ }
25674
+ },
25675
+ cas: "native-idempotency",
25676
+ externalEffect: true
25677
+ }
25678
+ ]
25679
+ });
25680
+
25441
25681
  // src/connectors/adapters/monday.ts
25442
25682
  var BOARD_FRAGMENT = `
25443
25683
  id
@@ -30237,6 +30477,93 @@ var quickbooksConnector = declarativeRestConnector({
30237
30477
  ]
30238
30478
  });
30239
30479
 
30480
+ // src/connectors/adapters/recall-ai.ts
30481
+ var recallAiRegions = [
30482
+ "https://us-east-1.recall.ai",
30483
+ "https://us-west-2.recall.ai",
30484
+ "https://eu-central-1.recall.ai",
30485
+ "https://ap-northeast-1.recall.ai"
30486
+ ];
30487
+ var recallAiConnector = declarativeRestConnector({
30488
+ kind: "recall-ai",
30489
+ displayName: "Recall.ai",
30490
+ description: "Create meeting bots, inspect bot state, and send in-meeting chat messages.",
30491
+ auth: {
30492
+ kind: "api-key",
30493
+ hint: "Recall.ai API key. Select a regional server on the connection; us-east-1 is the default."
30494
+ },
30495
+ category: "comms",
30496
+ defaultConsistencyModel: "authoritative",
30497
+ baseUrl: { metadataKey: "server", fallback: recallAiRegions[0] },
30498
+ allowedBaseUrls: recallAiRegions,
30499
+ credentialPlacement: { kind: "header", header: "Authorization" },
30500
+ test: { method: "GET", path: "/api/v1/bot" },
30501
+ capabilities: [
30502
+ {
30503
+ name: "bots.create",
30504
+ class: "mutation",
30505
+ description: "Create a Recall.ai bot that joins the supplied meeting URL.",
30506
+ parameters: {
30507
+ type: "object",
30508
+ properties: {
30509
+ meeting_url: { type: "string", description: "URL of the meeting to join." },
30510
+ bot_name: { type: "string", maxLength: 100, description: "Display name shown in the meeting." }
30511
+ },
30512
+ required: ["meeting_url"]
30513
+ },
30514
+ request: {
30515
+ method: "POST",
30516
+ path: "/api/v1/bot/",
30517
+ body: {
30518
+ meeting_url: "{meeting_url}",
30519
+ bot_name: "{bot_name}"
30520
+ }
30521
+ },
30522
+ cas: "native-idempotency",
30523
+ externalEffect: true
30524
+ },
30525
+ {
30526
+ name: "bots.retrieve",
30527
+ class: "read",
30528
+ description: "Retrieve the status and details of a Recall.ai bot.",
30529
+ parameters: {
30530
+ type: "object",
30531
+ properties: {
30532
+ bot_id: { type: "string", description: "UUID of the bot to retrieve." }
30533
+ },
30534
+ required: ["bot_id"]
30535
+ },
30536
+ request: { method: "GET", path: "/api/v1/bot/{bot_id}" }
30537
+ },
30538
+ {
30539
+ name: "messages.send",
30540
+ class: "mutation",
30541
+ description: "Send a chat message from an active Recall.ai bot.",
30542
+ parameters: {
30543
+ type: "object",
30544
+ properties: {
30545
+ bot_id: { type: "string", description: "UUID of the bot sending the message." },
30546
+ message: { type: "string", maxLength: 4096 },
30547
+ to: { type: "string", description: "Recipient; defaults to everyone." },
30548
+ pin: { type: "boolean", description: "Pin the message when the meeting platform supports it." }
30549
+ },
30550
+ required: ["bot_id", "message"]
30551
+ },
30552
+ request: {
30553
+ method: "POST",
30554
+ path: "/api/v1/bot/{bot_id}/send_chat_message/",
30555
+ body: {
30556
+ message: "{message}",
30557
+ to: "{to}",
30558
+ pin: "{pin}"
30559
+ }
30560
+ },
30561
+ cas: "native-idempotency",
30562
+ externalEffect: true
30563
+ }
30564
+ ]
30565
+ });
30566
+
30240
30567
  // src/connectors/adapters/ramp.ts
30241
30568
  var rampConnector = declarativeRestConnector({
30242
30569
  kind: "ramp",
@@ -34189,6 +34516,116 @@ var tallyConnector = declarativeRestConnector({
34189
34516
  ]
34190
34517
  });
34191
34518
 
34519
+ // src/connectors/adapters/tl-dv.ts
34520
+ var tlDvConnector = declarativeRestConnector({
34521
+ kind: "tl-dv",
34522
+ displayName: "tl;dv",
34523
+ description: "List meetings, retrieve transcripts and highlights, and import recordings for transcription.",
34524
+ auth: { kind: "api-key", hint: "tl;dv API key sent in the x-api-key header." },
34525
+ category: "doc",
34526
+ defaultConsistencyModel: "authoritative",
34527
+ baseUrl: "https://pasta.tldv.io",
34528
+ credentialPlacement: { kind: "header", header: "x-api-key" },
34529
+ test: { method: "GET", path: "/v1alpha1/health" },
34530
+ capabilities: [
34531
+ {
34532
+ name: "meetings.list",
34533
+ class: "read",
34534
+ description: "Search and list tl;dv meetings with pagination, date, participation, and meeting-type filters.",
34535
+ parameters: {
34536
+ type: "object",
34537
+ properties: {
34538
+ query: { type: "string" },
34539
+ page: { type: "integer", minimum: 1 },
34540
+ limit: { type: "integer", minimum: 1 },
34541
+ from: { type: "string", description: "ISO-8601 lower bound." },
34542
+ to: { type: "string", description: "ISO-8601 upper bound." },
34543
+ onlyParticipated: { type: "boolean" },
34544
+ meetingType: { type: "string", enum: ["internal", "external"] }
34545
+ }
34546
+ },
34547
+ request: {
34548
+ method: "GET",
34549
+ path: "/v1alpha1/meetings",
34550
+ query: {
34551
+ query: "{query}",
34552
+ page: "{page}",
34553
+ limit: "{limit}",
34554
+ from: "{from}",
34555
+ to: "{to}",
34556
+ onlyParticipated: "{onlyParticipated}",
34557
+ meetingType: "{meetingType}"
34558
+ }
34559
+ }
34560
+ },
34561
+ {
34562
+ name: "meetings.get",
34563
+ class: "read",
34564
+ description: "Get metadata for a tl;dv meeting by id.",
34565
+ parameters: {
34566
+ type: "object",
34567
+ properties: { meetingId: { type: "string" } },
34568
+ required: ["meetingId"]
34569
+ },
34570
+ request: { method: "GET", path: "/v1alpha1/meetings/{meetingId}" }
34571
+ },
34572
+ {
34573
+ name: "meetings.upload",
34574
+ class: "mutation",
34575
+ description: "Import a publicly reachable audio or video recording for asynchronous processing.",
34576
+ parameters: {
34577
+ type: "object",
34578
+ properties: {
34579
+ name: { type: "string" },
34580
+ url: { type: "string" },
34581
+ happenedAt: { type: "string" },
34582
+ dryRun: { type: "boolean" },
34583
+ participants: {
34584
+ type: "array",
34585
+ items: { type: "string", description: "Participant email address." }
34586
+ }
34587
+ },
34588
+ required: ["name", "url"]
34589
+ },
34590
+ request: {
34591
+ method: "POST",
34592
+ path: "/v1alpha1/meetings/import",
34593
+ body: {
34594
+ name: "{name}",
34595
+ url: "{url}",
34596
+ happenedAt: "{happenedAt}",
34597
+ dryRun: "{dryRun}",
34598
+ participants: "{participants}"
34599
+ }
34600
+ },
34601
+ cas: "native-idempotency",
34602
+ externalEffect: true
34603
+ },
34604
+ {
34605
+ name: "transcripts.get",
34606
+ class: "read",
34607
+ description: "Get the speaker-attributed transcript for a tl;dv meeting.",
34608
+ parameters: {
34609
+ type: "object",
34610
+ properties: { meetingId: { type: "string" } },
34611
+ required: ["meetingId"]
34612
+ },
34613
+ request: { method: "GET", path: "/v1alpha1/meetings/{meetingId}/transcript" }
34614
+ },
34615
+ {
34616
+ name: "highlights.get",
34617
+ class: "read",
34618
+ description: "Get highlights and notes for a tl;dv meeting.",
34619
+ parameters: {
34620
+ type: "object",
34621
+ properties: { meetingId: { type: "string" } },
34622
+ required: ["meetingId"]
34623
+ },
34624
+ request: { method: "GET", path: "/v1alpha1/meetings/{meetingId}/highlights" }
34625
+ }
34626
+ ]
34627
+ });
34628
+
34192
34629
  // src/connectors/adapters/todoist.ts
34193
34630
  var todoistConnector = declarativeRestConnector({
34194
34631
  kind: "todoist",
@@ -44835,6 +45272,655 @@ var supabaseConnector = declarativeRestConnector({
44835
45272
  ]
44836
45273
  });
44837
45274
 
45275
+ // src/connectors/adapters/builtwith.ts
45276
+ var builtwithConnector = declarativeRestConnector({
45277
+ kind: "builtwith",
45278
+ displayName: "BuiltWith",
45279
+ description: "Look up the technology stack, analytics, hosting, and metadata detected on any website.",
45280
+ auth: {
45281
+ kind: "api-key",
45282
+ hint: "API key (a UUID) from your BuiltWith account dashboard under My Account -> API Access. Sent as the KEY query parameter."
45283
+ },
45284
+ category: "market-intelligence",
45285
+ defaultConsistencyModel: "authoritative",
45286
+ baseUrl: "https://api.builtwith.com/v22",
45287
+ credentialPlacement: { kind: "query", parameter: "KEY" },
45288
+ defaultHeaders: { "content-type": "application/json" },
45289
+ test: { method: "GET", path: "/free1/api.json", query: { LOOKUP: "builtwith.com" } },
45290
+ capabilities: [
45291
+ {
45292
+ name: "domain.lookup",
45293
+ class: "read",
45294
+ description: "Return the full set of detected technologies and metadata for one or more root domains.",
45295
+ parameters: {
45296
+ type: "object",
45297
+ properties: {
45298
+ lookup: {
45299
+ type: "string",
45300
+ description: "Root domain to analyze, e.g. stripe.com. Up to 16 domains may be passed as a comma-separated list."
45301
+ }
45302
+ },
45303
+ required: ["lookup"]
45304
+ },
45305
+ request: { method: "GET", path: "/api.json", query: { LOOKUP: "{lookup}" } }
45306
+ },
45307
+ {
45308
+ name: "domain.free",
45309
+ class: "read",
45310
+ description: "Free-tier lookup returning the most popular detected technology groups for a single domain.",
45311
+ parameters: {
45312
+ type: "object",
45313
+ properties: { lookup: { type: "string", description: "Root domain to analyze." } },
45314
+ required: ["lookup"]
45315
+ },
45316
+ request: { method: "GET", path: "/free1/api.json", query: { LOOKUP: "{lookup}" } }
45317
+ },
45318
+ {
45319
+ name: "domain.relationships",
45320
+ class: "read",
45321
+ description: "Return domains that share relationships (e.g. analytics IDs, ad networks) with the given domain.",
45322
+ parameters: {
45323
+ type: "object",
45324
+ properties: {
45325
+ lookup: { type: "string", description: "Root domain to find related domains for." }
45326
+ },
45327
+ required: ["lookup"]
45328
+ },
45329
+ request: { method: "GET", path: "/rv2/api.json", query: { LOOKUP: "{lookup}" } }
45330
+ },
45331
+ {
45332
+ name: "company.to_url",
45333
+ class: "read",
45334
+ description: "Resolve a company name to its most likely website domain.",
45335
+ parameters: {
45336
+ type: "object",
45337
+ properties: {
45338
+ company: { type: "string", description: "Company name to resolve to a domain." }
45339
+ },
45340
+ required: ["company"]
45341
+ },
45342
+ request: { method: "GET", path: "/ctu1/api.json", query: { COMPANY: "{company}" } }
45343
+ }
45344
+ ]
45345
+ });
45346
+
45347
+ // src/connectors/adapters/fullenrich.ts
45348
+ var fullenrichConnector = declarativeRestConnector({
45349
+ kind: "fullenrich",
45350
+ displayName: "FullEnrich",
45351
+ description: "Waterfall B2B contact enrichment API that finds work emails and phone numbers for a contact from name, company, or LinkedIn URL.",
45352
+ auth: {
45353
+ kind: "api-key",
45354
+ hint: "API key from the FullEnrich dashboard (app.fullenrich.com/app/api). Sent as the Authorization: Bearer header."
45355
+ },
45356
+ category: "sales-intelligence",
45357
+ defaultConsistencyModel: "authoritative",
45358
+ baseUrl: "https://app.fullenrich.com/api/v2",
45359
+ credentialPlacement: { kind: "bearer" },
45360
+ defaultHeaders: { "content-type": "application/json" },
45361
+ test: { method: "GET", path: "/account/credits" },
45362
+ capabilities: [
45363
+ {
45364
+ name: "account.credits",
45365
+ class: "read",
45366
+ description: "Return the current credit balance for the account.",
45367
+ parameters: { type: "object", properties: {}, required: [] },
45368
+ request: { method: "GET", path: "/account/credits" }
45369
+ },
45370
+ {
45371
+ name: "contact.enrich.start",
45372
+ class: "mutation",
45373
+ description: "Start an async waterfall enrichment for up to 100 contacts; returns an enrichment id and bills per found data point.",
45374
+ parameters: {
45375
+ type: "object",
45376
+ properties: {
45377
+ name: { type: "string" },
45378
+ data: {
45379
+ type: "array",
45380
+ items: {
45381
+ type: "object",
45382
+ properties: {
45383
+ first_name: { type: "string" },
45384
+ last_name: { type: "string" },
45385
+ domain: { type: "string" },
45386
+ company_name: { type: "string" },
45387
+ linkedin_url: { type: "string" },
45388
+ enrich_fields: { type: "array", items: { type: "string" } }
45389
+ }
45390
+ }
45391
+ },
45392
+ webhook_url: { type: "string" }
45393
+ },
45394
+ required: ["name", "data"]
45395
+ },
45396
+ request: {
45397
+ method: "POST",
45398
+ path: "/contact/enrich/bulk",
45399
+ body: { name: "{name}", data: "{data}", webhook_url: "{webhook_url}" }
45400
+ },
45401
+ cas: "native-idempotency",
45402
+ externalEffect: false
45403
+ },
45404
+ {
45405
+ name: "contact.enrich.result",
45406
+ class: "read",
45407
+ description: "Retrieve the result of a previously started bulk enrichment by its id.",
45408
+ parameters: {
45409
+ type: "object",
45410
+ properties: { enrichment_id: { type: "string" } },
45411
+ required: ["enrichment_id"]
45412
+ },
45413
+ request: { method: "GET", path: "/contact/enrich/bulk/{enrichment_id}" }
45414
+ },
45415
+ {
45416
+ name: "contact.reverse_email.start",
45417
+ class: "mutation",
45418
+ description: "Start an async reverse-email lookup to find profiles/identities behind email addresses.",
45419
+ parameters: {
45420
+ type: "object",
45421
+ properties: {
45422
+ name: { type: "string" },
45423
+ data: {
45424
+ type: "array",
45425
+ items: { type: "object", properties: { email: { type: "string" } } }
45426
+ },
45427
+ webhook_url: { type: "string" }
45428
+ },
45429
+ required: ["name", "data"]
45430
+ },
45431
+ request: {
45432
+ method: "POST",
45433
+ path: "/contact/reverse/email/bulk",
45434
+ body: { name: "{name}", data: "{data}", webhook_url: "{webhook_url}" }
45435
+ },
45436
+ cas: "native-idempotency",
45437
+ externalEffect: false
45438
+ }
45439
+ ]
45440
+ });
45441
+
45442
+ // src/connectors/adapters/hunter.ts
45443
+ var hunterConnector = declarativeRestConnector({
45444
+ kind: "hunter",
45445
+ displayName: "Hunter",
45446
+ description: "Find, verify and manage professional email addresses at scale. Automate email discovery, validation, lead tracking, and campaign outreach with Hunter.io.",
45447
+ auth: {
45448
+ kind: "api-key",
45449
+ hint: "Hunter API key from API \u2192 API keys. Sent as the api_key query parameter."
45450
+ },
45451
+ category: "crm",
45452
+ defaultConsistencyModel: "authoritative",
45453
+ baseUrl: "https://api.hunter.io",
45454
+ credentialPlacement: { kind: "query", parameter: "api_key" },
45455
+ defaultHeaders: {
45456
+ accept: "application/json",
45457
+ "content-type": "application/json"
45458
+ },
45459
+ test: { method: "GET", path: "/v2/account" },
45460
+ capabilities: [
45461
+ {
45462
+ name: "find.email",
45463
+ class: "read",
45464
+ description: "Find the most likely email address of a person at a company, given the company domain and the person name.",
45465
+ parameters: {
45466
+ type: "object",
45467
+ properties: {
45468
+ domain: {
45469
+ type: "string",
45470
+ description: "Domain name of the company (e.g. stripe.com)."
45471
+ },
45472
+ company: {
45473
+ type: "string",
45474
+ description: "Company name, used when the domain is not known."
45475
+ },
45476
+ first_name: { type: "string" },
45477
+ last_name: { type: "string" },
45478
+ full_name: { type: "string" },
45479
+ max_duration: { type: "integer", minimum: 3, maximum: 20 }
45480
+ }
45481
+ },
45482
+ request: {
45483
+ method: "GET",
45484
+ path: "/v2/email-finder",
45485
+ query: {
45486
+ domain: "{domain}",
45487
+ company: "{company}",
45488
+ first_name: "{first_name}",
45489
+ last_name: "{last_name}",
45490
+ full_name: "{full_name}",
45491
+ max_duration: "{max_duration}"
45492
+ }
45493
+ }
45494
+ },
45495
+ {
45496
+ name: "verify.email",
45497
+ class: "mutation",
45498
+ description: "Verify the deliverability of an email address. Marked as a mutation because Hunter bills a verification credit per call.",
45499
+ parameters: {
45500
+ type: "object",
45501
+ properties: {
45502
+ email: { type: "string", description: "Email address to verify." }
45503
+ },
45504
+ required: ["email"]
45505
+ },
45506
+ request: {
45507
+ method: "GET",
45508
+ path: "/v2/email-verifier",
45509
+ query: { email: "{email}" }
45510
+ },
45511
+ cas: "native-idempotency",
45512
+ externalEffect: false
45513
+ },
45514
+ {
45515
+ name: "count.emails",
45516
+ class: "mutation",
45517
+ description: "Return the total number of email addresses Hunter has indexed for a given domain or company. Counts against the search-quota.",
45518
+ parameters: {
45519
+ type: "object",
45520
+ properties: {
45521
+ domain: { type: "string" },
45522
+ company: { type: "string" },
45523
+ type: {
45524
+ type: "string",
45525
+ enum: ["personal", "generic"],
45526
+ description: "Restrict the count to personal or generic email addresses."
45527
+ }
45528
+ }
45529
+ },
45530
+ request: {
45531
+ method: "GET",
45532
+ path: "/v2/email-count",
45533
+ query: {
45534
+ domain: "{domain}",
45535
+ company: "{company}",
45536
+ type: "{type}"
45537
+ }
45538
+ },
45539
+ cas: "native-idempotency",
45540
+ externalEffect: false
45541
+ },
45542
+ {
45543
+ name: "search.leads",
45544
+ class: "read",
45545
+ description: "List or search leads in the Hunter account.",
45546
+ parameters: {
45547
+ type: "object",
45548
+ properties: {
45549
+ limit: { type: "integer", minimum: 1, maximum: 100 },
45550
+ offset: { type: "integer", minimum: 0 },
45551
+ lead_list_id: { type: "integer" },
45552
+ query: { type: "string", description: "Free-text query (matches email, name, company)." },
45553
+ email: { type: "string" },
45554
+ company: { type: "string" },
45555
+ phone_number: { type: "string" },
45556
+ twitter: { type: "string" }
45557
+ }
45558
+ },
45559
+ request: {
45560
+ method: "GET",
45561
+ path: "/v2/leads",
45562
+ query: {
45563
+ limit: "{limit}",
45564
+ offset: "{offset}",
45565
+ lead_list_id: "{lead_list_id}",
45566
+ query: "{query}",
45567
+ email: "{email}",
45568
+ company: "{company}",
45569
+ phone_number: "{phone_number}",
45570
+ twitter: "{twitter}"
45571
+ }
45572
+ }
45573
+ },
45574
+ {
45575
+ name: "get.lead",
45576
+ class: "read",
45577
+ description: "Return a single lead by its Hunter lead ID.",
45578
+ parameters: {
45579
+ type: "object",
45580
+ properties: {
45581
+ id: { type: "integer", description: "The Hunter lead ID." }
45582
+ },
45583
+ required: ["id"]
45584
+ },
45585
+ request: {
45586
+ method: "GET",
45587
+ path: "/v2/leads/{id}"
45588
+ }
45589
+ },
45590
+ {
45591
+ name: "create.lead",
45592
+ class: "mutation",
45593
+ description: "Create a new lead in the Hunter account.",
45594
+ parameters: {
45595
+ type: "object",
45596
+ properties: {
45597
+ email: { type: "string" },
45598
+ first_name: { type: "string" },
45599
+ last_name: { type: "string" },
45600
+ position: { type: "string" },
45601
+ company: { type: "string" },
45602
+ company_industry: { type: "string" },
45603
+ company_size: { type: "string" },
45604
+ confidence_score: { type: "integer", minimum: 0, maximum: 100 },
45605
+ website: { type: "string" },
45606
+ country_code: { type: "string" },
45607
+ linkedin_url: { type: "string" },
45608
+ phone_number: { type: "string" },
45609
+ twitter: { type: "string" },
45610
+ notes: { type: "string" },
45611
+ source: { type: "string" },
45612
+ lead_list_id: { type: "integer" }
45613
+ }
45614
+ },
45615
+ request: {
45616
+ method: "POST",
45617
+ path: "/v2/leads",
45618
+ body: {
45619
+ email: "{email}",
45620
+ first_name: "{first_name}",
45621
+ last_name: "{last_name}",
45622
+ position: "{position}",
45623
+ company: "{company}",
45624
+ company_industry: "{company_industry}",
45625
+ company_size: "{company_size}",
45626
+ confidence_score: "{confidence_score}",
45627
+ website: "{website}",
45628
+ country_code: "{country_code}",
45629
+ linkedin_url: "{linkedin_url}",
45630
+ phone_number: "{phone_number}",
45631
+ twitter: "{twitter}",
45632
+ notes: "{notes}",
45633
+ source: "{source}",
45634
+ lead_list_id: "{lead_list_id}"
45635
+ }
45636
+ },
45637
+ cas: "native-idempotency"
45638
+ },
45639
+ {
45640
+ name: "update.lead",
45641
+ class: "mutation",
45642
+ description: "Update an existing lead. Only fields included in the request are modified.",
45643
+ parameters: {
45644
+ type: "object",
45645
+ properties: {
45646
+ id: { type: "integer", description: "The Hunter lead ID." },
45647
+ email: { type: "string" },
45648
+ first_name: { type: "string" },
45649
+ last_name: { type: "string" },
45650
+ position: { type: "string" },
45651
+ company: { type: "string" },
45652
+ company_industry: { type: "string" },
45653
+ company_size: { type: "string" },
45654
+ confidence_score: { type: "integer", minimum: 0, maximum: 100 },
45655
+ website: { type: "string" },
45656
+ country_code: { type: "string" },
45657
+ linkedin_url: { type: "string" },
45658
+ phone_number: { type: "string" },
45659
+ twitter: { type: "string" },
45660
+ notes: { type: "string" },
45661
+ source: { type: "string" },
45662
+ lead_list_id: { type: "integer" }
45663
+ },
45664
+ required: ["id"]
45665
+ },
45666
+ request: {
45667
+ method: "PUT",
45668
+ path: "/v2/leads/{id}",
45669
+ body: {
45670
+ email: "{email}",
45671
+ first_name: "{first_name}",
45672
+ last_name: "{last_name}",
45673
+ position: "{position}",
45674
+ company: "{company}",
45675
+ company_industry: "{company_industry}",
45676
+ company_size: "{company_size}",
45677
+ confidence_score: "{confidence_score}",
45678
+ website: "{website}",
45679
+ country_code: "{country_code}",
45680
+ linkedin_url: "{linkedin_url}",
45681
+ phone_number: "{phone_number}",
45682
+ twitter: "{twitter}",
45683
+ notes: "{notes}",
45684
+ source: "{source}",
45685
+ lead_list_id: "{lead_list_id}"
45686
+ }
45687
+ },
45688
+ cas: "optimistic-read-verify"
45689
+ },
45690
+ {
45691
+ name: "delete.lead",
45692
+ class: "mutation",
45693
+ description: "Permanently delete a lead from the Hunter account.",
45694
+ parameters: {
45695
+ type: "object",
45696
+ properties: {
45697
+ id: { type: "integer", description: "The Hunter lead ID." }
45698
+ },
45699
+ required: ["id"]
45700
+ },
45701
+ request: {
45702
+ method: "DELETE",
45703
+ path: "/v2/leads/{id}"
45704
+ },
45705
+ cas: "native-idempotency",
45706
+ externalEffect: true
45707
+ },
45708
+ {
45709
+ name: "add.recipients",
45710
+ class: "mutation",
45711
+ description: "Add recipients (leads or raw email addresses) to a Hunter Campaigns campaign.",
45712
+ parameters: {
45713
+ type: "object",
45714
+ properties: {
45715
+ campaign_id: {
45716
+ type: "integer",
45717
+ description: "The Hunter campaign ID to add recipients to."
45718
+ },
45719
+ emails: {
45720
+ type: "array",
45721
+ items: { type: "string" },
45722
+ description: "Email addresses to add as recipients."
45723
+ },
45724
+ lead_ids: {
45725
+ type: "array",
45726
+ items: { type: "integer" },
45727
+ description: "Existing Hunter lead IDs to add as recipients."
45728
+ }
45729
+ },
45730
+ required: ["campaign_id"]
45731
+ },
45732
+ request: {
45733
+ method: "POST",
45734
+ path: "/v2/campaigns/{campaign_id}/recipients",
45735
+ body: {
45736
+ emails: "{emails}",
45737
+ lead_ids: "{lead_ids}"
45738
+ }
45739
+ },
45740
+ cas: "native-idempotency"
45741
+ }
45742
+ ]
45743
+ });
45744
+
45745
+ // src/connectors/adapters/theirstack.ts
45746
+ var theirstackConnector = declarativeRestConnector({
45747
+ kind: "theirstack",
45748
+ displayName: "TheirStack",
45749
+ description: "Jobs and technographics data API. Search job postings and companies across 100+ countries, look up a company's tech stack, and detect buying intent.",
45750
+ auth: {
45751
+ kind: "api-key",
45752
+ hint: "API key from app.theirstack.com/settings/api. Sent as the Authorization: Bearer header."
45753
+ },
45754
+ category: "sales-intelligence",
45755
+ defaultConsistencyModel: "authoritative",
45756
+ baseUrl: "https://api.theirstack.com",
45757
+ credentialPlacement: { kind: "bearer" },
45758
+ defaultHeaders: { "content-type": "application/json" },
45759
+ test: { method: "GET", path: "/v0/billing/credit-balance" },
45760
+ capabilities: [
45761
+ {
45762
+ name: "jobs.search",
45763
+ class: "read",
45764
+ description: "Search job postings with filters (title, country, technology, posting recency, company). Requires at least one filter such as posted_at_max_age_days. Costs 1 credit per job returned.",
45765
+ parameters: {
45766
+ type: "object",
45767
+ properties: {
45768
+ posted_at_max_age_days: { type: "integer" },
45769
+ job_title_or: { type: "array", items: { type: "string" } },
45770
+ job_country_code_or: { type: "array", items: { type: "string" } },
45771
+ company_technology_slug_or: { type: "array", items: { type: "string" } },
45772
+ company_name_or: { type: "array", items: { type: "string" } },
45773
+ limit: { type: "integer" },
45774
+ page: { type: "integer" }
45775
+ },
45776
+ required: ["posted_at_max_age_days", "limit", "page"]
45777
+ },
45778
+ request: {
45779
+ method: "POST",
45780
+ path: "/v1/jobs/search",
45781
+ body: {
45782
+ posted_at_max_age_days: "{posted_at_max_age_days}",
45783
+ job_title_or: "{job_title_or}",
45784
+ job_country_code_or: "{job_country_code_or}",
45785
+ company_technology_slug_or: "{company_technology_slug_or}",
45786
+ company_name_or: "{company_name_or}",
45787
+ limit: "{limit}",
45788
+ page: "{page}"
45789
+ }
45790
+ }
45791
+ },
45792
+ {
45793
+ name: "companies.search",
45794
+ class: "read",
45795
+ description: "Search companies by country, technologies used, industry, funding, and nested job filters. Costs 3 credits per company returned.",
45796
+ parameters: {
45797
+ type: "object",
45798
+ properties: {
45799
+ company_country_code_or: { type: "array", items: { type: "string" } },
45800
+ company_technology_slug_or: { type: "array", items: { type: "string" } },
45801
+ industry_id_or: { type: "array", items: { type: "integer" } },
45802
+ min_funding_usd: { type: "integer" },
45803
+ max_funding_usd: { type: "integer" },
45804
+ limit: { type: "integer" },
45805
+ page: { type: "integer" }
45806
+ },
45807
+ required: ["limit", "page"]
45808
+ },
45809
+ request: {
45810
+ method: "POST",
45811
+ path: "/v1/companies/search",
45812
+ body: {
45813
+ company_country_code_or: "{company_country_code_or}",
45814
+ company_technology_slug_or: "{company_technology_slug_or}",
45815
+ industry_id_or: "{industry_id_or}",
45816
+ min_funding_usd: "{min_funding_usd}",
45817
+ max_funding_usd: "{max_funding_usd}",
45818
+ limit: "{limit}",
45819
+ page: "{page}"
45820
+ }
45821
+ }
45822
+ },
45823
+ {
45824
+ name: "companies.technologies",
45825
+ class: "read",
45826
+ description: "Look up the technologies (tech stack) detected for a company identified by domain, name, or LinkedIn URL. Costs 3 credits per company lookup.",
45827
+ parameters: {
45828
+ type: "object",
45829
+ properties: {
45830
+ company_domain: { type: "string" },
45831
+ company_name: { type: "string" },
45832
+ company_linkedin_url: { type: "string" },
45833
+ technology_slug_or: { type: "array", items: { type: "string" } }
45834
+ },
45835
+ required: ["company_domain"]
45836
+ },
45837
+ request: {
45838
+ method: "POST",
45839
+ path: "/v1/companies/technologies",
45840
+ body: {
45841
+ company_domain: "{company_domain}",
45842
+ company_name: "{company_name}",
45843
+ company_linkedin_url: "{company_linkedin_url}",
45844
+ technology_slug_or: "{technology_slug_or}"
45845
+ }
45846
+ }
45847
+ },
45848
+ {
45849
+ name: "companies.buying_intents",
45850
+ class: "read",
45851
+ description: "Retrieve buying-intent signals for a company identified by domain, name, or LinkedIn URL. Costs 3 credits per company lookup.",
45852
+ parameters: {
45853
+ type: "object",
45854
+ properties: {
45855
+ company_domain: { type: "string" },
45856
+ company_name: { type: "string" },
45857
+ company_linkedin_url: { type: "string" }
45858
+ },
45859
+ required: ["company_domain"]
45860
+ },
45861
+ request: {
45862
+ method: "POST",
45863
+ path: "/v1/companies/buying_intents",
45864
+ body: {
45865
+ company_domain: "{company_domain}",
45866
+ company_name: "{company_name}",
45867
+ company_linkedin_url: "{company_linkedin_url}"
45868
+ }
45869
+ }
45870
+ }
45871
+ ]
45872
+ });
45873
+
45874
+ // src/connectors/adapters/zerobounce.ts
45875
+ var zerobounceConnector = declarativeRestConnector({
45876
+ kind: "zerobounce",
45877
+ displayName: "ZeroBounce",
45878
+ description: "Email validation and verification via the ZeroBounce REST API.",
45879
+ auth: {
45880
+ kind: "api-key",
45881
+ hint: "ZeroBounce API key from your account dashboard."
45882
+ },
45883
+ category: "crm",
45884
+ defaultConsistencyModel: "authoritative",
45885
+ baseUrl: "https://api.zerobounce.net",
45886
+ credentialPlacement: { kind: "query", parameter: "api_key" },
45887
+ test: {
45888
+ method: "GET",
45889
+ path: "/v2/getcredits"
45890
+ },
45891
+ capabilities: [
45892
+ {
45893
+ name: "validate.email",
45894
+ class: "mutation",
45895
+ description: "Validate a single email address. Returns status (valid, invalid, catch-all, unknown, spamtrap, abuse), bounce type, and additional metadata.",
45896
+ parameters: {
45897
+ type: "object",
45898
+ properties: {
45899
+ email: {
45900
+ type: "string",
45901
+ description: "The email address to validate."
45902
+ },
45903
+ ipAddress: {
45904
+ type: "string",
45905
+ description: "Optional IP address of the user submitting the email address. Can improve accuracy when provided."
45906
+ }
45907
+ },
45908
+ required: ["email"]
45909
+ },
45910
+ request: {
45911
+ method: "GET",
45912
+ path: "/v2/validate",
45913
+ query: {
45914
+ email: "{email}",
45915
+ ip_address: "{ipAddress}"
45916
+ }
45917
+ },
45918
+ cas: "native-idempotency",
45919
+ externalEffect: true
45920
+ }
45921
+ ]
45922
+ });
45923
+
44838
45924
  // src/connectors/adapters/factories.ts
44839
45925
  function defineFactoryAdapter(factory, envMap) {
44840
45926
  const metadataOptions = Object.fromEntries(
@@ -45096,6 +46182,12 @@ var CONNECTOR_ADAPTER_FACTORIES = [
45096
46182
  clientId: "FATHOM_OAUTH_CLIENT_ID",
45097
46183
  clientSecret: "FATHOM_OAUTH_CLIENT_SECRET"
45098
46184
  }),
46185
+ // Customer-supplied API keys gate these direct adapters at connection
46186
+ // time; no shared deployment credential is required.
46187
+ defineFactoryAdapter(() => avomaConnector, {}),
46188
+ defineFactoryAdapter(() => tlDvConnector, {}),
46189
+ defineFactoryAdapter(() => meetgeekAiConnector, {}),
46190
+ defineFactoryAdapter(() => recallAiConnector, {}),
45099
46191
  defineFactoryAdapter(() => docusignConnector, {
45100
46192
  clientId: "DOCUSIGN_OAUTH_CLIENT_ID",
45101
46193
  clientSecret: "DOCUSIGN_OAUTH_CLIENT_SECRET"
@@ -45243,7 +46335,12 @@ var CONNECTOR_ADAPTER_FACTORIES = [
45243
46335
  defineFactoryAdapter(() => customerIoConnector, {}),
45244
46336
  defineFactoryAdapter(() => brazeConnector, {}),
45245
46337
  defineFactoryAdapter(() => smartleadConnector, {}),
45246
- defineFactoryAdapter(() => lemlistConnector, {})
46338
+ defineFactoryAdapter(() => lemlistConnector, {}),
46339
+ defineFactoryAdapter(() => builtwithConnector, {}),
46340
+ defineFactoryAdapter(() => fullenrichConnector, {}),
46341
+ defineFactoryAdapter(() => hunterConnector, {}),
46342
+ defineFactoryAdapter(() => theirstackConnector, {}),
46343
+ defineFactoryAdapter(() => zerobounceConnector, {})
45247
46344
  ];
45248
46345
  function resolveConnectorAdapterFactoryOptions(definition, envSource) {
45249
46346
  const options = {};
@@ -70034,193 +71131,6 @@ var asknewsConnector = declarativeRestConnector({
70034
71131
  ]
70035
71132
  });
70036
71133
 
70037
- // src/connectors/adapters/avoma.ts
70038
- var avomaConnector = declarativeRestConnector({
70039
- kind: "avoma",
70040
- displayName: "Avoma",
70041
- description: "Push dialer call records into Avoma and pull meeting transcripts/recordings from the AI Meeting Assistant.",
70042
- auth: { kind: "api-key", hint: "Avoma API key sent as the Authorization header." },
70043
- category: "calendar",
70044
- defaultConsistencyModel: "authoritative",
70045
- baseUrl: "https://api.avoma.com/v1",
70046
- test: { method: "GET", path: "/meetings", query: { page_size: "1" } },
70047
- capabilities: [
70048
- {
70049
- name: "calls.create",
70050
- class: "mutation",
70051
- description: "Register a completed call from an external dialer (HubSpot, Twilio, Zoom, etc.) so Avoma can ingest the recording and transcribe it.",
70052
- parameters: {
70053
- type: "object",
70054
- properties: {
70055
- external_id: { type: "string" },
70056
- user_email: { type: "string" },
70057
- source: { type: "string" },
70058
- direction: { type: "string" },
70059
- start_at: { type: "string" },
70060
- end_at: { type: "string" },
70061
- frm: { type: "string" },
70062
- to: { type: "string" },
70063
- frm_name: { type: "string" },
70064
- to_name: { type: "string" },
70065
- recording_url: { type: "string" },
70066
- participants: { type: "array" },
70067
- answered: { type: "boolean" },
70068
- is_voicemail: { type: "boolean" },
70069
- additional_details: { type: "string" }
70070
- },
70071
- required: [
70072
- "external_id",
70073
- "user_email",
70074
- "source",
70075
- "direction",
70076
- "start_at",
70077
- "frm",
70078
- "to",
70079
- "recording_url"
70080
- ]
70081
- },
70082
- request: {
70083
- method: "POST",
70084
- path: "/calls",
70085
- body: {
70086
- external_id: "{external_id}",
70087
- user_email: "{user_email}",
70088
- source: "{source}",
70089
- direction: "{direction}",
70090
- start_at: "{start_at}",
70091
- end_at: "{end_at}",
70092
- frm: "{frm}",
70093
- to: "{to}",
70094
- frm_name: "{frm_name}",
70095
- to_name: "{to_name}",
70096
- recording_url: "{recording_url}",
70097
- participants: "{participants}",
70098
- answered: "{answered}",
70099
- is_voicemail: "{is_voicemail}",
70100
- additional_details: "{additional_details}"
70101
- }
70102
- },
70103
- cas: "native-idempotency"
70104
- },
70105
- {
70106
- name: "meetings.transcription.get",
70107
- class: "read",
70108
- description: "Fetch the transcript for a recorded Avoma meeting by its UUID.",
70109
- parameters: {
70110
- type: "object",
70111
- properties: { meeting_uuid: { type: "string" } },
70112
- required: ["meeting_uuid"]
70113
- },
70114
- request: {
70115
- method: "GET",
70116
- path: "/meetings/{meeting_uuid}/transcriptions"
70117
- }
70118
- },
70119
- {
70120
- name: "meetings.recording.get",
70121
- class: "read",
70122
- description: "Fetch the recording metadata and download URL for an Avoma meeting.",
70123
- parameters: {
70124
- type: "object",
70125
- properties: { meeting_uuid: { type: "string" } },
70126
- required: ["meeting_uuid"]
70127
- },
70128
- request: {
70129
- method: "GET",
70130
- path: "/meetings/{meeting_uuid}/recordings"
70131
- }
70132
- },
70133
- {
70134
- name: "calls.update",
70135
- class: "mutation",
70136
- description: "Update fields on a previously-registered call (e.g. correct start/end timestamps, attach a recording_url that was not ready at create time, change participants). Pass only the fields you want to change in `patch`.",
70137
- parameters: {
70138
- type: "object",
70139
- properties: {
70140
- external_id: {
70141
- type: "string",
70142
- description: "External call id used at create time; identifies the call to update."
70143
- },
70144
- patch: {
70145
- type: "object",
70146
- description: "Partial call object; only the fields supplied are forwarded to Avoma. Supports start_at, end_at, frm, to, frm_name, to_name, recording_url, participants, answered, is_voicemail, additional_details.",
70147
- properties: {
70148
- start_at: { type: "string" },
70149
- end_at: { type: "string" },
70150
- frm: { type: "string" },
70151
- to: { type: "string" },
70152
- frm_name: { type: "string" },
70153
- to_name: { type: "string" },
70154
- recording_url: { type: "string" },
70155
- participants: { type: "array" },
70156
- answered: { type: "boolean" },
70157
- is_voicemail: { type: "boolean" },
70158
- additional_details: { type: "string" }
70159
- }
70160
- }
70161
- },
70162
- required: ["external_id", "patch"]
70163
- },
70164
- request: {
70165
- method: "PATCH",
70166
- path: "/calls/{external_id}",
70167
- body: "{patch}"
70168
- },
70169
- cas: "native-idempotency",
70170
- externalEffect: true
70171
- },
70172
- {
70173
- name: "calls.cancel",
70174
- class: "mutation",
70175
- description: "Cancel/remove a previously-registered call by its external id. Used when an external dialer logs a call that was later voided.",
70176
- parameters: {
70177
- type: "object",
70178
- properties: {
70179
- external_id: {
70180
- type: "string",
70181
- description: "External call id used at create time; identifies the call to cancel."
70182
- }
70183
- },
70184
- required: ["external_id"]
70185
- },
70186
- request: {
70187
- method: "DELETE",
70188
- path: "/calls/{external_id}"
70189
- },
70190
- cas: "native-idempotency",
70191
- externalEffect: true
70192
- },
70193
- {
70194
- name: "notes.create",
70195
- class: "mutation",
70196
- description: "Attach a note (free-form text) to a recorded Avoma meeting. Useful for adding human or agent-generated annotations after the meeting is processed.",
70197
- parameters: {
70198
- type: "object",
70199
- properties: {
70200
- meeting_uuid: {
70201
- type: "string",
70202
- description: "UUID of the meeting the note is attached to."
70203
- },
70204
- note: {
70205
- type: "string",
70206
- description: "Note body text."
70207
- }
70208
- },
70209
- required: ["meeting_uuid", "note"]
70210
- },
70211
- request: {
70212
- method: "POST",
70213
- path: "/meetings/{meeting_uuid}/notes",
70214
- body: {
70215
- note: "{note}"
70216
- }
70217
- },
70218
- cas: "native-idempotency",
70219
- externalEffect: true
70220
- }
70221
- ]
70222
- });
70223
-
70224
71134
  // src/connectors/adapters/azure-communication-services.ts
70225
71135
  var emailAddress3 = {
70226
71136
  type: "object",
@@ -90657,309 +91567,6 @@ var influencersClubConnector = declarativeRestConnector({
90657
91567
  ]
90658
91568
  });
90659
91569
 
90660
- // src/connectors/adapters/hunter.ts
90661
- var hunterConnector = declarativeRestConnector({
90662
- kind: "hunter",
90663
- displayName: "Hunter",
90664
- description: "Find, verify and manage professional email addresses at scale. Automate email discovery, validation, lead tracking, and campaign outreach with Hunter.io.",
90665
- auth: {
90666
- kind: "api-key",
90667
- hint: "Hunter API key from API \u2192 API keys. Sent as the api_key query parameter."
90668
- },
90669
- category: "crm",
90670
- defaultConsistencyModel: "authoritative",
90671
- baseUrl: "https://api.hunter.io",
90672
- credentialPlacement: { kind: "query", parameter: "api_key" },
90673
- defaultHeaders: {
90674
- accept: "application/json",
90675
- "content-type": "application/json"
90676
- },
90677
- test: { method: "GET", path: "/v2/account" },
90678
- capabilities: [
90679
- {
90680
- name: "find.email",
90681
- class: "read",
90682
- description: "Find the most likely email address of a person at a company, given the company domain and the person name.",
90683
- parameters: {
90684
- type: "object",
90685
- properties: {
90686
- domain: {
90687
- type: "string",
90688
- description: "Domain name of the company (e.g. stripe.com)."
90689
- },
90690
- company: {
90691
- type: "string",
90692
- description: "Company name, used when the domain is not known."
90693
- },
90694
- first_name: { type: "string" },
90695
- last_name: { type: "string" },
90696
- full_name: { type: "string" },
90697
- max_duration: { type: "integer", minimum: 3, maximum: 20 }
90698
- }
90699
- },
90700
- request: {
90701
- method: "GET",
90702
- path: "/v2/email-finder",
90703
- query: {
90704
- domain: "{domain}",
90705
- company: "{company}",
90706
- first_name: "{first_name}",
90707
- last_name: "{last_name}",
90708
- full_name: "{full_name}",
90709
- max_duration: "{max_duration}"
90710
- }
90711
- }
90712
- },
90713
- {
90714
- name: "verify.email",
90715
- class: "mutation",
90716
- description: "Verify the deliverability of an email address. Marked as a mutation because Hunter bills a verification credit per call.",
90717
- parameters: {
90718
- type: "object",
90719
- properties: {
90720
- email: { type: "string", description: "Email address to verify." }
90721
- },
90722
- required: ["email"]
90723
- },
90724
- request: {
90725
- method: "GET",
90726
- path: "/v2/email-verifier",
90727
- query: { email: "{email}" }
90728
- },
90729
- cas: "native-idempotency",
90730
- externalEffect: false
90731
- },
90732
- {
90733
- name: "count.emails",
90734
- class: "mutation",
90735
- description: "Return the total number of email addresses Hunter has indexed for a given domain or company. Counts against the search-quota.",
90736
- parameters: {
90737
- type: "object",
90738
- properties: {
90739
- domain: { type: "string" },
90740
- company: { type: "string" },
90741
- type: {
90742
- type: "string",
90743
- enum: ["personal", "generic"],
90744
- description: "Restrict the count to personal or generic email addresses."
90745
- }
90746
- }
90747
- },
90748
- request: {
90749
- method: "GET",
90750
- path: "/v2/email-count",
90751
- query: {
90752
- domain: "{domain}",
90753
- company: "{company}",
90754
- type: "{type}"
90755
- }
90756
- },
90757
- cas: "native-idempotency",
90758
- externalEffect: false
90759
- },
90760
- {
90761
- name: "search.leads",
90762
- class: "read",
90763
- description: "List or search leads in the Hunter account.",
90764
- parameters: {
90765
- type: "object",
90766
- properties: {
90767
- limit: { type: "integer", minimum: 1, maximum: 100 },
90768
- offset: { type: "integer", minimum: 0 },
90769
- lead_list_id: { type: "integer" },
90770
- query: { type: "string", description: "Free-text query (matches email, name, company)." },
90771
- email: { type: "string" },
90772
- company: { type: "string" },
90773
- phone_number: { type: "string" },
90774
- twitter: { type: "string" }
90775
- }
90776
- },
90777
- request: {
90778
- method: "GET",
90779
- path: "/v2/leads",
90780
- query: {
90781
- limit: "{limit}",
90782
- offset: "{offset}",
90783
- lead_list_id: "{lead_list_id}",
90784
- query: "{query}",
90785
- email: "{email}",
90786
- company: "{company}",
90787
- phone_number: "{phone_number}",
90788
- twitter: "{twitter}"
90789
- }
90790
- }
90791
- },
90792
- {
90793
- name: "get.lead",
90794
- class: "read",
90795
- description: "Return a single lead by its Hunter lead ID.",
90796
- parameters: {
90797
- type: "object",
90798
- properties: {
90799
- id: { type: "integer", description: "The Hunter lead ID." }
90800
- },
90801
- required: ["id"]
90802
- },
90803
- request: {
90804
- method: "GET",
90805
- path: "/v2/leads/{id}"
90806
- }
90807
- },
90808
- {
90809
- name: "create.lead",
90810
- class: "mutation",
90811
- description: "Create a new lead in the Hunter account.",
90812
- parameters: {
90813
- type: "object",
90814
- properties: {
90815
- email: { type: "string" },
90816
- first_name: { type: "string" },
90817
- last_name: { type: "string" },
90818
- position: { type: "string" },
90819
- company: { type: "string" },
90820
- company_industry: { type: "string" },
90821
- company_size: { type: "string" },
90822
- confidence_score: { type: "integer", minimum: 0, maximum: 100 },
90823
- website: { type: "string" },
90824
- country_code: { type: "string" },
90825
- linkedin_url: { type: "string" },
90826
- phone_number: { type: "string" },
90827
- twitter: { type: "string" },
90828
- notes: { type: "string" },
90829
- source: { type: "string" },
90830
- lead_list_id: { type: "integer" }
90831
- }
90832
- },
90833
- request: {
90834
- method: "POST",
90835
- path: "/v2/leads",
90836
- body: {
90837
- email: "{email}",
90838
- first_name: "{first_name}",
90839
- last_name: "{last_name}",
90840
- position: "{position}",
90841
- company: "{company}",
90842
- company_industry: "{company_industry}",
90843
- company_size: "{company_size}",
90844
- confidence_score: "{confidence_score}",
90845
- website: "{website}",
90846
- country_code: "{country_code}",
90847
- linkedin_url: "{linkedin_url}",
90848
- phone_number: "{phone_number}",
90849
- twitter: "{twitter}",
90850
- notes: "{notes}",
90851
- source: "{source}",
90852
- lead_list_id: "{lead_list_id}"
90853
- }
90854
- },
90855
- cas: "native-idempotency"
90856
- },
90857
- {
90858
- name: "update.lead",
90859
- class: "mutation",
90860
- description: "Update an existing lead. Only fields included in the request are modified.",
90861
- parameters: {
90862
- type: "object",
90863
- properties: {
90864
- id: { type: "integer", description: "The Hunter lead ID." },
90865
- email: { type: "string" },
90866
- first_name: { type: "string" },
90867
- last_name: { type: "string" },
90868
- position: { type: "string" },
90869
- company: { type: "string" },
90870
- company_industry: { type: "string" },
90871
- company_size: { type: "string" },
90872
- confidence_score: { type: "integer", minimum: 0, maximum: 100 },
90873
- website: { type: "string" },
90874
- country_code: { type: "string" },
90875
- linkedin_url: { type: "string" },
90876
- phone_number: { type: "string" },
90877
- twitter: { type: "string" },
90878
- notes: { type: "string" },
90879
- source: { type: "string" },
90880
- lead_list_id: { type: "integer" }
90881
- },
90882
- required: ["id"]
90883
- },
90884
- request: {
90885
- method: "PUT",
90886
- path: "/v2/leads/{id}",
90887
- body: {
90888
- email: "{email}",
90889
- first_name: "{first_name}",
90890
- last_name: "{last_name}",
90891
- position: "{position}",
90892
- company: "{company}",
90893
- company_industry: "{company_industry}",
90894
- company_size: "{company_size}",
90895
- confidence_score: "{confidence_score}",
90896
- website: "{website}",
90897
- country_code: "{country_code}",
90898
- linkedin_url: "{linkedin_url}",
90899
- phone_number: "{phone_number}",
90900
- twitter: "{twitter}",
90901
- notes: "{notes}",
90902
- source: "{source}",
90903
- lead_list_id: "{lead_list_id}"
90904
- }
90905
- },
90906
- cas: "optimistic-read-verify"
90907
- },
90908
- {
90909
- name: "delete.lead",
90910
- class: "mutation",
90911
- description: "Permanently delete a lead from the Hunter account.",
90912
- parameters: {
90913
- type: "object",
90914
- properties: {
90915
- id: { type: "integer", description: "The Hunter lead ID." }
90916
- },
90917
- required: ["id"]
90918
- },
90919
- request: {
90920
- method: "DELETE",
90921
- path: "/v2/leads/{id}"
90922
- },
90923
- cas: "native-idempotency",
90924
- externalEffect: true
90925
- },
90926
- {
90927
- name: "add.recipients",
90928
- class: "mutation",
90929
- description: "Add recipients (leads or raw email addresses) to a Hunter Campaigns campaign.",
90930
- parameters: {
90931
- type: "object",
90932
- properties: {
90933
- campaign_id: {
90934
- type: "integer",
90935
- description: "The Hunter campaign ID to add recipients to."
90936
- },
90937
- emails: {
90938
- type: "array",
90939
- items: { type: "string" },
90940
- description: "Email addresses to add as recipients."
90941
- },
90942
- lead_ids: {
90943
- type: "array",
90944
- items: { type: "integer" },
90945
- description: "Existing Hunter lead IDs to add as recipients."
90946
- }
90947
- },
90948
- required: ["campaign_id"]
90949
- },
90950
- request: {
90951
- method: "POST",
90952
- path: "/v2/campaigns/{campaign_id}/recipients",
90953
- body: {
90954
- emails: "{emails}",
90955
- lead_ids: "{lead_ids}"
90956
- }
90957
- },
90958
- cas: "native-idempotency"
90959
- }
90960
- ]
90961
- });
90962
-
90963
91570
  // src/connectors/adapters/hugging-face.ts
90964
91571
  var huggingFaceConnector = declarativeRestConnector({
90965
91572
  kind: "hugging-face",
@@ -99115,167 +99722,6 @@ var mailerooConnector = declarativeRestConnector({
99115
99722
  ]
99116
99723
  });
99117
99724
 
99118
- // src/connectors/adapters/meetgeek-ai.ts
99119
- var meetgeekAiConnector = declarativeRestConnector({
99120
- kind: "meetgeek-ai",
99121
- displayName: "MeetGeek",
99122
- description: "AI meeting assistant: list and inspect recorded meetings, pull transcripts, highlights, and summary insights, and upload new recordings for transcription.",
99123
- auth: {
99124
- kind: "api-key",
99125
- hint: "MeetGeek API key \u2014 sent as `Authorization: Bearer <key>` against https://api.meetgeek.ai/v1."
99126
- },
99127
- category: "other",
99128
- defaultConsistencyModel: "authoritative",
99129
- baseUrl: "https://api.meetgeek.ai/v1",
99130
- test: { method: "GET", path: "/meetings", query: { limit: 1 } },
99131
- capabilities: [
99132
- {
99133
- name: "meetings.list",
99134
- class: "read",
99135
- description: "List meetings recorded on the authenticated workspace. Supports pagination via cursor and date filters.",
99136
- parameters: {
99137
- type: "object",
99138
- properties: {
99139
- limit: {
99140
- type: "integer",
99141
- minimum: 1,
99142
- maximum: 100,
99143
- description: "Page size (max 100)."
99144
- },
99145
- cursor: { type: "string", description: "Opaque pagination cursor returned by a prior call." },
99146
- fromDate: {
99147
- type: "string",
99148
- description: "Inclusive lower bound for meeting start (ISO 8601)."
99149
- },
99150
- toDate: {
99151
- type: "string",
99152
- description: "Inclusive upper bound for meeting start (ISO 8601)."
99153
- }
99154
- }
99155
- },
99156
- request: {
99157
- method: "GET",
99158
- path: "/meetings",
99159
- query: {
99160
- limit: "{limit}",
99161
- cursor: "{cursor}",
99162
- from_date: "{fromDate}",
99163
- to_date: "{toDate}"
99164
- }
99165
- }
99166
- },
99167
- {
99168
- name: "meetings.get",
99169
- class: "read",
99170
- description: "Return metadata for a single meeting by id (participants, host, duration, summary).",
99171
- parameters: {
99172
- type: "object",
99173
- properties: {
99174
- meetingId: { type: "string", description: "The MeetGeek meeting id." }
99175
- },
99176
- required: ["meetingId"]
99177
- },
99178
- request: { method: "GET", path: "/meetings/{meetingId}" }
99179
- },
99180
- {
99181
- name: "meetings.transcript",
99182
- class: "read",
99183
- description: "Return the time-coded transcript for a meeting. The response is an array of utterances with speaker, start/end offsets, and text.",
99184
- parameters: {
99185
- type: "object",
99186
- properties: {
99187
- meetingId: { type: "string", description: "The MeetGeek meeting id." }
99188
- },
99189
- required: ["meetingId"]
99190
- },
99191
- request: { method: "GET", path: "/meetings/{meetingId}/transcript" }
99192
- },
99193
- {
99194
- name: "meetings.highlights",
99195
- class: "read",
99196
- description: "Return the AI-generated highlights (key moments, action items, decisions) for a single meeting.",
99197
- parameters: {
99198
- type: "object",
99199
- properties: {
99200
- meetingId: { type: "string", description: "The MeetGeek meeting id." }
99201
- },
99202
- required: ["meetingId"]
99203
- },
99204
- request: { method: "GET", path: "/meetings/{meetingId}/highlights" }
99205
- },
99206
- {
99207
- name: "meetings.summaryInsights",
99208
- class: "read",
99209
- description: "Return aggregate summary insights across a window of meetings (topics, sentiment, attendance, talk ratio).",
99210
- parameters: {
99211
- type: "object",
99212
- properties: {
99213
- fromDate: {
99214
- type: "string",
99215
- description: "Inclusive lower bound for the analysis window (ISO 8601)."
99216
- },
99217
- toDate: {
99218
- type: "string",
99219
- description: "Inclusive upper bound for the analysis window (ISO 8601)."
99220
- },
99221
- templateName: {
99222
- type: "string",
99223
- description: "Optional MeetGeek meeting template (e.g. Sales Discovery, 1-on-1). Filters insights to meetings tagged with the template."
99224
- }
99225
- }
99226
- },
99227
- request: {
99228
- method: "GET",
99229
- path: "/insights/summary",
99230
- query: {
99231
- from_date: "{fromDate}",
99232
- to_date: "{toDate}",
99233
- template_name: "{templateName}"
99234
- }
99235
- }
99236
- },
99237
- {
99238
- name: "recordings.upload",
99239
- class: "mutation",
99240
- description: "Submit a recording for asynchronous transcription. MeetGeek fetches `downloadUrl` directly, so the URL must be publicly reachable (e.g. an S3 signed link). The response carries the queued meeting id you can poll via `meetings.get`.",
99241
- parameters: {
99242
- type: "object",
99243
- properties: {
99244
- downloadUrl: {
99245
- type: "string",
99246
- description: "Publicly reachable URL MeetGeek will GET to fetch the audio/video file. Required."
99247
- },
99248
- languageCode: {
99249
- type: "string",
99250
- description: "BCP-47 language code (e.g. en-US, es-ES, fr-FR)."
99251
- },
99252
- templateName: {
99253
- type: "string",
99254
- description: "Optional MeetGeek meeting template name used to drive analysis."
99255
- },
99256
- instruction: {
99257
- type: "string",
99258
- description: "Free-form instruction passed to MeetGeek for custom summarization."
99259
- }
99260
- },
99261
- required: ["downloadUrl"]
99262
- },
99263
- request: {
99264
- method: "POST",
99265
- path: "/recordings",
99266
- body: {
99267
- download_url: "{downloadUrl}",
99268
- language_code: "{languageCode}",
99269
- template_name: "{templateName}",
99270
- instruction: "{instruction}"
99271
- }
99272
- },
99273
- cas: "native-idempotency",
99274
- externalEffect: true
99275
- }
99276
- ]
99277
- });
99278
-
99279
99725
  // src/connectors/adapters/messagebird.ts
99280
99726
  var messagebirdConnector = declarativeRestConnector({
99281
99727
  kind: "messagebird",
@@ -110338,95 +110784,6 @@ var rapidtextAiConnector = declarativeRestConnector({
110338
110784
  ]
110339
110785
  });
110340
110786
 
110341
- // src/connectors/adapters/recall-ai.ts
110342
- var recallAiConnector = declarativeRestConnector({
110343
- kind: "recall-ai",
110344
- displayName: "Recall.ai",
110345
- description: "Create and manage bots in Zoom, Teams, and other meeting platforms. Send chat messages and retrieve bot status.",
110346
- auth: { kind: "api-key", hint: "Recall.ai API key." },
110347
- category: "comms",
110348
- defaultConsistencyModel: "authoritative",
110349
- baseUrl: "https://api.recall.ai/api/v1",
110350
- test: { method: "GET", path: "/bots" },
110351
- capabilities: [
110352
- {
110353
- name: "bots.create",
110354
- class: "mutation",
110355
- description: "Create a bot to join a meeting.",
110356
- parameters: {
110357
- type: "object",
110358
- properties: {
110359
- meeting_url: { type: "string", description: "URL of the meeting to join" },
110360
- bot_name: { type: "string", description: "Name for the bot (max 100 characters)" },
110361
- recording_config: { type: "object", description: "Configuration for recording" },
110362
- output_media: { type: "object", description: "Output media configuration" },
110363
- chat: { type: "object", description: "Chat configuration" },
110364
- automatic_leave: { type: "object", description: "Settings for automatic bot departure" },
110365
- variant: { type: "object", description: "Bot variant configuration" },
110366
- breakout_room: { type: "object", description: "Breakout room settings" },
110367
- metadata: { type: "object", description: "Custom metadata for the bot" }
110368
- },
110369
- required: ["meeting_url"]
110370
- },
110371
- request: {
110372
- method: "POST",
110373
- path: "/bots",
110374
- body: {
110375
- meeting_url: "{meeting_url}",
110376
- bot_name: "{bot_name}",
110377
- recording_config: "{recording_config}",
110378
- output_media: "{output_media}",
110379
- chat: "{chat}",
110380
- automatic_leave: "{automatic_leave}",
110381
- variant: "{variant}",
110382
- breakout_room: "{breakout_room}",
110383
- metadata: "{metadata}"
110384
- }
110385
- },
110386
- cas: "native-idempotency"
110387
- },
110388
- {
110389
- name: "bots.retrieve",
110390
- class: "read",
110391
- description: "Retrieve the status and details of a bot.",
110392
- parameters: {
110393
- type: "object",
110394
- properties: {
110395
- bot_id: { type: "string", description: "UUID of the bot to retrieve" }
110396
- },
110397
- required: ["bot_id"]
110398
- },
110399
- request: {
110400
- method: "GET",
110401
- path: "/bots/{bot_id}"
110402
- }
110403
- },
110404
- {
110405
- name: "messages.send",
110406
- class: "mutation",
110407
- description: "Send a chat message in a meeting.",
110408
- parameters: {
110409
- type: "object",
110410
- properties: {
110411
- bot_id: { type: "string", description: "UUID of the bot sending the message" },
110412
- message: { type: "string", description: "Message content (max 4096 characters)" },
110413
- to: { type: "string", description: "Target recipient (person or group)" }
110414
- },
110415
- required: ["bot_id", "message"]
110416
- },
110417
- request: {
110418
- method: "POST",
110419
- path: "/bots/{bot_id}/send_chat_message",
110420
- body: {
110421
- message: "{message}",
110422
- to: "{to}"
110423
- }
110424
- },
110425
- cas: "native-idempotency"
110426
- }
110427
- ]
110428
- });
110429
-
110430
110787
  // src/connectors/adapters/reachinbox.ts
110431
110788
  var reachinboxConnector = declarativeRestConnector({
110432
110789
  kind: "reachinbox",
@@ -119015,177 +119372,6 @@ var timelinesAiConnector = declarativeRestConnector({
119015
119372
  ]
119016
119373
  });
119017
119374
 
119018
- // src/connectors/adapters/tl-dv.ts
119019
- var tlDvConnector = declarativeRestConnector({
119020
- kind: "tl-dv",
119021
- displayName: "tl;dv",
119022
- description: "Record meetings, get transcripts, and access meeting notes automatically.",
119023
- auth: { kind: "api-key", hint: "tl;dv API key." },
119024
- category: "doc",
119025
- defaultConsistencyModel: "authoritative",
119026
- baseUrl: "https://api.tldv.io/v1",
119027
- test: { method: "GET", path: "/meetings" },
119028
- capabilities: [
119029
- {
119030
- name: "meetings.list",
119031
- class: "read",
119032
- description: "List meetings with optional search and filtering.",
119033
- parameters: {
119034
- type: "object",
119035
- properties: {
119036
- query: { type: "string" },
119037
- page: { type: "integer" },
119038
- limit: { type: "integer" },
119039
- onlyParticipated: { type: "boolean" },
119040
- meetingType: { type: "string" }
119041
- }
119042
- },
119043
- request: {
119044
- method: "GET",
119045
- path: "/meetings",
119046
- query: {
119047
- query: "{query}",
119048
- page: "{page}",
119049
- limit: "{limit}",
119050
- onlyParticipated: "{onlyParticipated}",
119051
- meetingType: "{meetingType}"
119052
- }
119053
- }
119054
- },
119055
- {
119056
- name: "meetings.get",
119057
- class: "read",
119058
- description: "Get details of a specific meeting.",
119059
- parameters: {
119060
- type: "object",
119061
- properties: { meetingId: { type: "string" } },
119062
- required: ["meetingId"]
119063
- },
119064
- request: { method: "GET", path: "/meetings/{meetingId}" }
119065
- },
119066
- {
119067
- name: "meetings.upload",
119068
- class: "mutation",
119069
- description: "Upload a recording for transcription.",
119070
- parameters: {
119071
- type: "object",
119072
- properties: {
119073
- name: { type: "string" },
119074
- url: { type: "string" },
119075
- happenedAt: { type: "string" },
119076
- dryRun: { type: "boolean" },
119077
- participants: { type: "object" }
119078
- },
119079
- required: ["name", "url"]
119080
- },
119081
- request: {
119082
- method: "POST",
119083
- path: "/meetings/upload",
119084
- body: {
119085
- name: "{name}",
119086
- url: "{url}",
119087
- happenedAt: "{happenedAt}",
119088
- dryRun: "{dryRun}",
119089
- participants: "{participants}"
119090
- }
119091
- },
119092
- cas: "native-idempotency"
119093
- },
119094
- {
119095
- name: "transcripts.get",
119096
- class: "read",
119097
- description: "Get the transcript of a meeting.",
119098
- parameters: {
119099
- type: "object",
119100
- properties: { meetingId: { type: "string" } },
119101
- required: ["meetingId"]
119102
- },
119103
- request: { method: "GET", path: "/meetings/{meetingId}/transcript" }
119104
- },
119105
- {
119106
- name: "highlights.get",
119107
- class: "read",
119108
- description: "Get highlights from a meeting.",
119109
- parameters: {
119110
- type: "object",
119111
- properties: { meetingId: { type: "string" } },
119112
- required: ["meetingId"]
119113
- },
119114
- request: { method: "GET", path: "/meetings/{meetingId}/highlights" }
119115
- },
119116
- {
119117
- name: "meetings.delete",
119118
- class: "mutation",
119119
- description: "Delete a meeting/recording.",
119120
- parameters: {
119121
- type: "object",
119122
- properties: { meetingId: { type: "string" } },
119123
- required: ["meetingId"]
119124
- },
119125
- request: { method: "DELETE", path: "/meetings/{meetingId}" },
119126
- cas: "native-idempotency",
119127
- externalEffect: true
119128
- },
119129
- {
119130
- name: "highlights.create",
119131
- class: "mutation",
119132
- description: "Create a highlight clip on a meeting.",
119133
- parameters: {
119134
- type: "object",
119135
- properties: {
119136
- meetingId: { type: "string" },
119137
- title: { type: "string" },
119138
- startTime: { type: "number" },
119139
- endTime: { type: "number" },
119140
- note: { type: "string" }
119141
- },
119142
- required: ["meetingId", "startTime", "endTime"]
119143
- },
119144
- request: {
119145
- method: "POST",
119146
- path: "/meetings/{meetingId}/highlights",
119147
- body: "args"
119148
- },
119149
- cas: "native-idempotency",
119150
- externalEffect: true
119151
- },
119152
- {
119153
- name: "share-links.create",
119154
- class: "mutation",
119155
- description: "Create a shareable link for a recording.",
119156
- parameters: {
119157
- type: "object",
119158
- properties: {
119159
- meetingId: { type: "string" },
119160
- expiresAt: { type: "string" },
119161
- password: { type: "string" }
119162
- },
119163
- required: ["meetingId"]
119164
- },
119165
- request: {
119166
- method: "POST",
119167
- path: "/meetings/{meetingId}/share-links",
119168
- body: "args"
119169
- },
119170
- cas: "native-idempotency",
119171
- externalEffect: true
119172
- },
119173
- {
119174
- name: "summaries.regenerate",
119175
- class: "mutation",
119176
- description: "Regenerate the AI summary for a meeting.",
119177
- parameters: {
119178
- type: "object",
119179
- properties: { meetingId: { type: "string" } },
119180
- required: ["meetingId"]
119181
- },
119182
- request: { method: "POST", path: "/meetings/{meetingId}/summary/regenerate" },
119183
- cas: "native-idempotency",
119184
- externalEffect: true
119185
- }
119186
- ]
119187
- });
119188
-
119189
119375
  // src/connectors/adapters/toggl-track.ts
119190
119376
  var togglTrackConnector = declarativeRestConnector({
119191
119377
  kind: "toggl-track",
@@ -125973,56 +126159,6 @@ var youcanbookmeConnector = declarativeRestConnector({
125973
126159
  ]
125974
126160
  });
125975
126161
 
125976
- // src/connectors/adapters/zerobounce.ts
125977
- var zerobounceConnector = declarativeRestConnector({
125978
- kind: "zerobounce",
125979
- displayName: "ZeroBounce",
125980
- description: "Email validation and verification via the ZeroBounce REST API.",
125981
- auth: {
125982
- kind: "api-key",
125983
- hint: "ZeroBounce API key from your account dashboard."
125984
- },
125985
- category: "crm",
125986
- defaultConsistencyModel: "authoritative",
125987
- baseUrl: "https://api.zerobounce.net",
125988
- credentialPlacement: { kind: "query", parameter: "api_key" },
125989
- test: {
125990
- method: "GET",
125991
- path: "/v2/getcredits"
125992
- },
125993
- capabilities: [
125994
- {
125995
- name: "validate.email",
125996
- class: "mutation",
125997
- description: "Validate a single email address. Returns status (valid, invalid, catch-all, unknown, spamtrap, abuse), bounce type, and additional metadata.",
125998
- parameters: {
125999
- type: "object",
126000
- properties: {
126001
- email: {
126002
- type: "string",
126003
- description: "The email address to validate."
126004
- },
126005
- ipAddress: {
126006
- type: "string",
126007
- description: "Optional IP address of the user submitting the email address. Can improve accuracy when provided."
126008
- }
126009
- },
126010
- required: ["email"]
126011
- },
126012
- request: {
126013
- method: "GET",
126014
- path: "/v2/validate",
126015
- query: {
126016
- email: "{email}",
126017
- ip_address: "{ipAddress}"
126018
- }
126019
- },
126020
- cas: "native-idempotency",
126021
- externalEffect: true
126022
- }
126023
- ]
126024
- });
126025
-
126026
126162
  // src/connectors/adapters/zeplin.ts
126027
126163
  var zeplinConnector = declarativeRestConnector({
126028
126164
  kind: "zeplin",
@@ -128030,78 +128166,6 @@ var wizaConnector = declarativeRestConnector({
128030
128166
  ]
128031
128167
  });
128032
128168
 
128033
- // src/connectors/adapters/builtwith.ts
128034
- var builtwithConnector = declarativeRestConnector({
128035
- kind: "builtwith",
128036
- displayName: "BuiltWith",
128037
- description: "Look up the technology stack, analytics, hosting, and metadata detected on any website.",
128038
- auth: {
128039
- kind: "api-key",
128040
- hint: "API key (a UUID) from your BuiltWith account dashboard under My Account -> API Access. Sent as the KEY query parameter."
128041
- },
128042
- category: "market-intelligence",
128043
- defaultConsistencyModel: "authoritative",
128044
- baseUrl: "https://api.builtwith.com/v22",
128045
- credentialPlacement: { kind: "query", parameter: "KEY" },
128046
- defaultHeaders: { "content-type": "application/json" },
128047
- test: { method: "GET", path: "/free1/api.json", query: { LOOKUP: "builtwith.com" } },
128048
- capabilities: [
128049
- {
128050
- name: "domain.lookup",
128051
- class: "read",
128052
- description: "Return the full set of detected technologies and metadata for one or more root domains.",
128053
- parameters: {
128054
- type: "object",
128055
- properties: {
128056
- lookup: {
128057
- type: "string",
128058
- description: "Root domain to analyze, e.g. stripe.com. Up to 16 domains may be passed as a comma-separated list."
128059
- }
128060
- },
128061
- required: ["lookup"]
128062
- },
128063
- request: { method: "GET", path: "/api.json", query: { LOOKUP: "{lookup}" } }
128064
- },
128065
- {
128066
- name: "domain.free",
128067
- class: "read",
128068
- description: "Free-tier lookup returning the most popular detected technology groups for a single domain.",
128069
- parameters: {
128070
- type: "object",
128071
- properties: { lookup: { type: "string", description: "Root domain to analyze." } },
128072
- required: ["lookup"]
128073
- },
128074
- request: { method: "GET", path: "/free1/api.json", query: { LOOKUP: "{lookup}" } }
128075
- },
128076
- {
128077
- name: "domain.relationships",
128078
- class: "read",
128079
- description: "Return domains that share relationships (e.g. analytics IDs, ad networks) with the given domain.",
128080
- parameters: {
128081
- type: "object",
128082
- properties: {
128083
- lookup: { type: "string", description: "Root domain to find related domains for." }
128084
- },
128085
- required: ["lookup"]
128086
- },
128087
- request: { method: "GET", path: "/rv2/api.json", query: { LOOKUP: "{lookup}" } }
128088
- },
128089
- {
128090
- name: "company.to_url",
128091
- class: "read",
128092
- description: "Resolve a company name to its most likely website domain.",
128093
- parameters: {
128094
- type: "object",
128095
- properties: {
128096
- company: { type: "string", description: "Company name to resolve to a domain." }
128097
- },
128098
- required: ["company"]
128099
- },
128100
- request: { method: "GET", path: "/ctu1/api.json", query: { COMPANY: "{company}" } }
128101
- }
128102
- ]
128103
- });
128104
-
128105
128169
  // src/connectors/adapters/common-room.ts
128106
128170
  var commonRoomConnector = declarativeRestConnector({
128107
128171
  kind: "common-room",
@@ -128639,101 +128703,6 @@ var crustdataConnector = declarativeRestConnector({
128639
128703
  ]
128640
128704
  });
128641
128705
 
128642
- // src/connectors/adapters/fullenrich.ts
128643
- var fullenrichConnector = declarativeRestConnector({
128644
- kind: "fullenrich",
128645
- displayName: "FullEnrich",
128646
- description: "Waterfall B2B contact enrichment API that finds work emails and phone numbers for a contact from name, company, or LinkedIn URL.",
128647
- auth: {
128648
- kind: "api-key",
128649
- hint: "API key from the FullEnrich dashboard (app.fullenrich.com/app/api). Sent as the Authorization: Bearer header."
128650
- },
128651
- category: "sales-intelligence",
128652
- defaultConsistencyModel: "authoritative",
128653
- baseUrl: "https://app.fullenrich.com/api/v2",
128654
- credentialPlacement: { kind: "bearer" },
128655
- defaultHeaders: { "content-type": "application/json" },
128656
- test: { method: "GET", path: "/account/credits" },
128657
- capabilities: [
128658
- {
128659
- name: "account.credits",
128660
- class: "read",
128661
- description: "Return the current credit balance for the account.",
128662
- parameters: { type: "object", properties: {}, required: [] },
128663
- request: { method: "GET", path: "/account/credits" }
128664
- },
128665
- {
128666
- name: "contact.enrich.start",
128667
- class: "mutation",
128668
- description: "Start an async waterfall enrichment for up to 100 contacts; returns an enrichment id and bills per found data point.",
128669
- parameters: {
128670
- type: "object",
128671
- properties: {
128672
- name: { type: "string" },
128673
- data: {
128674
- type: "array",
128675
- items: {
128676
- type: "object",
128677
- properties: {
128678
- first_name: { type: "string" },
128679
- last_name: { type: "string" },
128680
- domain: { type: "string" },
128681
- company_name: { type: "string" },
128682
- linkedin_url: { type: "string" },
128683
- enrich_fields: { type: "array", items: { type: "string" } }
128684
- }
128685
- }
128686
- },
128687
- webhook_url: { type: "string" }
128688
- },
128689
- required: ["name", "data"]
128690
- },
128691
- request: {
128692
- method: "POST",
128693
- path: "/contact/enrich/bulk",
128694
- body: { name: "{name}", data: "{data}", webhook_url: "{webhook_url}" }
128695
- },
128696
- cas: "native-idempotency",
128697
- externalEffect: false
128698
- },
128699
- {
128700
- name: "contact.enrich.result",
128701
- class: "read",
128702
- description: "Retrieve the result of a previously started bulk enrichment by its id.",
128703
- parameters: {
128704
- type: "object",
128705
- properties: { enrichment_id: { type: "string" } },
128706
- required: ["enrichment_id"]
128707
- },
128708
- request: { method: "GET", path: "/contact/enrich/bulk/{enrichment_id}" }
128709
- },
128710
- {
128711
- name: "contact.reverse_email.start",
128712
- class: "mutation",
128713
- description: "Start an async reverse-email lookup to find profiles/identities behind email addresses.",
128714
- parameters: {
128715
- type: "object",
128716
- properties: {
128717
- name: { type: "string" },
128718
- data: {
128719
- type: "array",
128720
- items: { type: "object", properties: { email: { type: "string" } } }
128721
- },
128722
- webhook_url: { type: "string" }
128723
- },
128724
- required: ["name", "data"]
128725
- },
128726
- request: {
128727
- method: "POST",
128728
- path: "/contact/reverse/email/bulk",
128729
- body: { name: "{name}", data: "{data}", webhook_url: "{webhook_url}" }
128730
- },
128731
- cas: "native-idempotency",
128732
- externalEffect: false
128733
- }
128734
- ]
128735
- });
128736
-
128737
128706
  // src/connectors/adapters/leadmagic.ts
128738
128707
  var leadmagicConnector = declarativeRestConnector({
128739
128708
  kind: "leadmagic",
@@ -129462,135 +129431,6 @@ var seamlessAiConnector = declarativeRestConnector({
129462
129431
  ]
129463
129432
  });
129464
129433
 
129465
- // src/connectors/adapters/theirstack.ts
129466
- var theirstackConnector = declarativeRestConnector({
129467
- kind: "theirstack",
129468
- displayName: "TheirStack",
129469
- description: "Jobs and technographics data API. Search job postings and companies across 100+ countries, look up a company's tech stack, and detect buying intent.",
129470
- auth: {
129471
- kind: "api-key",
129472
- hint: "API key from app.theirstack.com/settings/api. Sent as the Authorization: Bearer header."
129473
- },
129474
- category: "sales-intelligence",
129475
- defaultConsistencyModel: "authoritative",
129476
- baseUrl: "https://api.theirstack.com",
129477
- credentialPlacement: { kind: "bearer" },
129478
- defaultHeaders: { "content-type": "application/json" },
129479
- test: { method: "GET", path: "/v0/billing/credit-balance" },
129480
- capabilities: [
129481
- {
129482
- name: "jobs.search",
129483
- class: "read",
129484
- description: "Search job postings with filters (title, country, technology, posting recency, company). Requires at least one filter such as posted_at_max_age_days. Costs 1 credit per job returned.",
129485
- parameters: {
129486
- type: "object",
129487
- properties: {
129488
- posted_at_max_age_days: { type: "integer" },
129489
- job_title_or: { type: "array", items: { type: "string" } },
129490
- job_country_code_or: { type: "array", items: { type: "string" } },
129491
- company_technology_slug_or: { type: "array", items: { type: "string" } },
129492
- company_name_or: { type: "array", items: { type: "string" } },
129493
- limit: { type: "integer" },
129494
- page: { type: "integer" }
129495
- },
129496
- required: ["posted_at_max_age_days", "limit", "page"]
129497
- },
129498
- request: {
129499
- method: "POST",
129500
- path: "/v1/jobs/search",
129501
- body: {
129502
- posted_at_max_age_days: "{posted_at_max_age_days}",
129503
- job_title_or: "{job_title_or}",
129504
- job_country_code_or: "{job_country_code_or}",
129505
- company_technology_slug_or: "{company_technology_slug_or}",
129506
- company_name_or: "{company_name_or}",
129507
- limit: "{limit}",
129508
- page: "{page}"
129509
- }
129510
- }
129511
- },
129512
- {
129513
- name: "companies.search",
129514
- class: "read",
129515
- description: "Search companies by country, technologies used, industry, funding, and nested job filters. Costs 3 credits per company returned.",
129516
- parameters: {
129517
- type: "object",
129518
- properties: {
129519
- company_country_code_or: { type: "array", items: { type: "string" } },
129520
- company_technology_slug_or: { type: "array", items: { type: "string" } },
129521
- industry_id_or: { type: "array", items: { type: "integer" } },
129522
- min_funding_usd: { type: "integer" },
129523
- max_funding_usd: { type: "integer" },
129524
- limit: { type: "integer" },
129525
- page: { type: "integer" }
129526
- },
129527
- required: ["limit", "page"]
129528
- },
129529
- request: {
129530
- method: "POST",
129531
- path: "/v1/companies/search",
129532
- body: {
129533
- company_country_code_or: "{company_country_code_or}",
129534
- company_technology_slug_or: "{company_technology_slug_or}",
129535
- industry_id_or: "{industry_id_or}",
129536
- min_funding_usd: "{min_funding_usd}",
129537
- max_funding_usd: "{max_funding_usd}",
129538
- limit: "{limit}",
129539
- page: "{page}"
129540
- }
129541
- }
129542
- },
129543
- {
129544
- name: "companies.technologies",
129545
- class: "read",
129546
- description: "Look up the technologies (tech stack) detected for a company identified by domain, name, or LinkedIn URL. Costs 3 credits per company lookup.",
129547
- parameters: {
129548
- type: "object",
129549
- properties: {
129550
- company_domain: { type: "string" },
129551
- company_name: { type: "string" },
129552
- company_linkedin_url: { type: "string" },
129553
- technology_slug_or: { type: "array", items: { type: "string" } }
129554
- },
129555
- required: ["company_domain"]
129556
- },
129557
- request: {
129558
- method: "POST",
129559
- path: "/v1/companies/technologies",
129560
- body: {
129561
- company_domain: "{company_domain}",
129562
- company_name: "{company_name}",
129563
- company_linkedin_url: "{company_linkedin_url}",
129564
- technology_slug_or: "{technology_slug_or}"
129565
- }
129566
- }
129567
- },
129568
- {
129569
- name: "companies.buying_intents",
129570
- class: "read",
129571
- description: "Retrieve buying-intent signals for a company identified by domain, name, or LinkedIn URL. Costs 3 credits per company lookup.",
129572
- parameters: {
129573
- type: "object",
129574
- properties: {
129575
- company_domain: { type: "string" },
129576
- company_name: { type: "string" },
129577
- company_linkedin_url: { type: "string" }
129578
- },
129579
- required: ["company_domain"]
129580
- },
129581
- request: {
129582
- method: "POST",
129583
- path: "/v1/companies/buying_intents",
129584
- body: {
129585
- company_domain: "{company_domain}",
129586
- company_name: "{company_name}",
129587
- company_linkedin_url: "{company_linkedin_url}"
129588
- }
129589
- }
129590
- }
129591
- ]
129592
- });
129593
-
129594
129434
  // src/connectors/adapters/usergems.ts
129595
129435
  var usergemsConnector = declarativeRestConnector({
129596
129436
  kind: "usergems",
@@ -130473,6 +130313,7 @@ export {
130473
130313
  asanaConnector,
130474
130314
  attioConnector,
130475
130315
  auth0Connector,
130316
+ avomaConnector,
130476
130317
  azureAdConnector,
130477
130318
  basecampConnector,
130478
130319
  backblazeConnector,
@@ -130556,6 +130397,7 @@ export {
130556
130397
  microsoftPowerBiConnector,
130557
130398
  microsoftTodoConnector,
130558
130399
  mastodonConnector,
130400
+ meetgeekAiConnector,
130559
130401
  mondayConnector,
130560
130402
  notionConnector,
130561
130403
  notion,
@@ -130570,6 +130412,7 @@ export {
130570
130412
  plaidConnector,
130571
130413
  pipedriveConnector,
130572
130414
  quickbooksConnector,
130415
+ recallAiConnector,
130573
130416
  rampConnector,
130574
130417
  ringcentralConnector,
130575
130418
  rssConnector,
@@ -130581,6 +130424,7 @@ export {
130581
130424
  sageIntacctConnector,
130582
130425
  stripePackConnector,
130583
130426
  tallyConnector,
130427
+ tlDvConnector,
130584
130428
  todoistConnector,
130585
130429
  trelloConnector,
130586
130430
  twentyConnector,
@@ -130619,6 +130463,11 @@ export {
130619
130463
  metabaseConnector,
130620
130464
  segmentConnector,
130621
130465
  supabaseConnector,
130466
+ builtwithConnector,
130467
+ fullenrichConnector,
130468
+ hunterConnector,
130469
+ theirstackConnector,
130470
+ zerobounceConnector,
130622
130471
  CONNECTOR_ADAPTER_FACTORIES,
130623
130472
  resolveConnectorAdapterFactoryOptions,
130624
130473
  phonyConnector,
@@ -130700,7 +130549,6 @@ export {
130700
130549
  assemblyaiConnector,
130701
130550
  avianConnector,
130702
130551
  asknewsConnector,
130703
- avomaConnector,
130704
130552
  azureCommunicationServicesConnector,
130705
130553
  autocallsConnector,
130706
130554
  barcodeLookupConnector,
@@ -130801,7 +130649,6 @@ export {
130801
130649
  heymarketSmsConnector,
130802
130650
  housecallProConnector,
130803
130651
  influencersClubConnector,
130804
- hunterConnector,
130805
130652
  huggingFaceConnector,
130806
130653
  instantlyAiConnector,
130807
130654
  imageRouterConnector,
@@ -130843,7 +130690,6 @@ export {
130843
130690
  manychatConnector,
130844
130691
  mailgunConnector,
130845
130692
  mailerooConnector,
130846
- meetgeekAiConnector,
130847
130693
  messagebirdConnector,
130848
130694
  mauticConnector,
130849
130695
  memConnector,
@@ -130913,7 +130759,6 @@ export {
130913
130759
  quadernoConnector,
130914
130760
  raiaAiConnector,
130915
130761
  rapidtextAiConnector,
130916
- recallAiConnector,
130917
130762
  reachinboxConnector,
130918
130763
  redditConnector,
130919
130764
  reoonVerifierConnector,
@@ -130957,7 +130802,6 @@ export {
130957
130802
  textcortexAiConnector,
130958
130803
  timeOpsConnector,
130959
130804
  timelinesAiConnector,
130960
- tlDvConnector,
130961
130805
  togglTrackConnector,
130962
130806
  totalcmsConnector,
130963
130807
  typefullyConnector,
@@ -130989,7 +130833,6 @@ export {
130989
130833
  wufooConnector,
130990
130834
  wrikeConnector,
130991
130835
  youcanbookmeConnector,
130992
- zerobounceConnector,
130993
130836
  zeplinConnector,
130994
130837
  zuoraConnector,
130995
130838
  zapierConnector,
@@ -131005,21 +130848,18 @@ export {
131005
130848
  findymailConnector,
131006
130849
  snovIoConnector,
131007
130850
  wizaConnector,
131008
- builtwithConnector,
131009
130851
  commonRoomConnector,
131010
130852
  leadfeederConnector,
131011
130853
  serperConnector,
131012
130854
  warmlyConnector,
131013
130855
  autoboundConnector,
131014
130856
  crustdataConnector,
131015
- fullenrichConnector,
131016
130857
  leadmagicConnector,
131017
130858
  brightdataConnector,
131018
130859
  phantombusterConnector,
131019
130860
  zenrowsConnector,
131020
130861
  oceanIoConnector,
131021
130862
  seamlessAiConnector,
131022
- theirstackConnector,
131023
130863
  usergemsConnector,
131024
130864
  polytomicConnector,
131025
130865
  signwellConnector,
@@ -131031,4 +130871,4 @@ export {
131031
130871
  demandbaseConnector,
131032
130872
  adapters_exports
131033
130873
  };
131034
- //# sourceMappingURL=chunk-QFG2LVCT.js.map
130874
+ //# sourceMappingURL=chunk-4CQ7WC6R.js.map