@talqing/sdk 0.8.0 → 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  // This file is auto-generated by @hey-api/openapi-ts
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.Runs = exports.Telephony = exports.Providers = exports.PhoneNumbers = exports.Accounts = exports.Streams = exports.Secrets = exports.Schemas = exports.Functions = exports.Observability = exports.Knowledge2 = exports.Pages = exports.Nodes = exports.Integrations = exports.Triggers = exports.McpTools = exports.Email = exports.Senders = exports.Batches2 = exports.Sends = exports.Recipients2 = exports.Copilot = exports.Tools = exports.Tasks = exports.Knowledge = exports.Agents2 = exports.Conversations = exports.Sessions = exports.Items2 = exports.Chats = exports.Tokens = exports.Messages = exports.Items = exports.Analysis2 = exports.Catalog = exports.Voices = exports.Elevenlabs = exports.Models = exports.Avatars = exports.Calls = exports.ScreenRecording = exports.Recording = exports.Batches = exports.Recipients = exports.Analysis = exports.ProviderKeys = exports.Billing = exports.Credits = exports.Agents = exports.Versions = void 0;
5
- exports.TalqingApi = exports.Whatsapp = exports.TwilioSenders = exports.Templates = exports.Batches3 = exports.Recipients3 = exports.Webhooks = exports.Tools2 = exports.Versions3 = exports.Tasks2 = exports.Versions2 = void 0;
4
+ exports.Tasks2 = exports.Versions2 = exports.Runs = exports.Telephony = exports.Providers = exports.PhoneNumbers = exports.Accounts = exports.Streams = exports.Secrets = exports.Schemas = exports.Functions = exports.Observability = exports.Integrations = exports.Triggers = exports.McpTools = exports.Faqs = exports.Entries = exports.Email = exports.Senders = exports.Batches2 = exports.Sends = exports.Recipients2 = exports.Copilot = exports.Tools = exports.Tasks = exports.Agents2 = exports.Conversations = exports.Sessions = exports.Items2 = exports.Chats = exports.Tokens = exports.Messages = exports.Items = exports.Analysis2 = exports.Catalog = exports.Voices = exports.Elevenlabs = exports.Models = exports.Avatars = exports.Calls = exports.ScreenRecording = exports.Recording = exports.Batches = exports.Recipients = exports.Analysis = exports.ProviderKeys = exports.Billing = exports.Credits = exports.Agents = exports.Versions = void 0;
5
+ exports.TalqingApi = exports.Whatsapp = exports.TwilioSenders = exports.Templates = exports.Batches3 = exports.Recipients3 = exports.Webhooks = exports.Tools2 = exports.Versions3 = void 0;
6
6
  const client_gen_js_1 = require("./client.gen.js");
7
7
  const index_js_1 = require("./client/index.js");
8
8
  class HeyApiClient {
@@ -1866,59 +1866,6 @@ class Agents2 extends HeyApiClient {
1866
1866
  }
1867
1867
  }
1868
1868
  exports.Agents2 = Agents2;
1869
- class Knowledge extends HeyApiClient {
1870
- /**
1871
- * Knowledge Copilot Send Message
1872
- *
1873
- * Say something to KnowledgeCoPilot. The reply arrives on the stream, not here.
1874
- *
1875
- * Returns as soon as the turn is queued; watch `turn` and `message` frames
1876
- * on the matching `/stream` for what it does.
1877
- */
1878
- send(parameters, options) {
1879
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'kb_id' }, { key: 'sendMessageRequest', map: 'body' }] }]);
1880
- return (options?.client ?? this.client).post({
1881
- responseStyle: 'data',
1882
- security: [{ scheme: 'bearer', type: 'http' }, {
1883
- in: 'cookie',
1884
- name: 'talqing_session',
1885
- type: 'apiKey'
1886
- }],
1887
- url: '/v1/copilot/knowledge/{kb_id}/messages',
1888
- ...options,
1889
- ...params,
1890
- headers: {
1891
- 'Content-Type': 'application/json',
1892
- ...options?.headers,
1893
- ...params.headers
1894
- }
1895
- });
1896
- }
1897
- /**
1898
- * Knowledge Copilot Stream
1899
- *
1900
- * KnowledgeCoPilot's curation chat for one knowledge base.
1901
- *
1902
- * Frames: `snapshot` (the whole conversation, sent first and on every
1903
- * reconnect), `message` (one new message), `turn` (that turn's lifecycle —
1904
- * `running`, `done`, `error`, `canceled`).
1905
- */
1906
- stream(parameters, options) {
1907
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'kb_id' }] }]);
1908
- return (options?.client ?? this.client).sse.get({
1909
- responseStyle: 'data',
1910
- security: [{ scheme: 'bearer', type: 'http' }, {
1911
- in: 'cookie',
1912
- name: 'talqing_session',
1913
- type: 'apiKey'
1914
- }],
1915
- url: '/v1/copilot/knowledge/{kb_id}/stream',
1916
- ...options,
1917
- ...params
1918
- });
1919
- }
1920
- }
1921
- exports.Knowledge = Knowledge;
1922
1869
  class Tasks extends HeyApiClient {
1923
1870
  /**
1924
1871
  * Task Copilot Send Message
@@ -2029,9 +1976,6 @@ class Copilot extends HeyApiClient {
2029
1976
  get agents() {
2030
1977
  return this._agents ?? (this._agents = new Agents2({ client: this.client }));
2031
1978
  }
2032
- get knowledge() {
2033
- return this._knowledge ?? (this._knowledge = new Knowledge({ client: this.client }));
2034
- }
2035
1979
  get tasks() {
2036
1980
  return this._tasks ?? (this._tasks = new Tasks({ client: this.client }));
2037
1981
  }
@@ -2646,75 +2590,15 @@ class Email extends HeyApiClient {
2646
2590
  }
2647
2591
  }
2648
2592
  exports.Email = Email;
2649
- class McpTools extends HeyApiClient {
2650
- /**
2651
- * List Integration Mcp Tools
2652
- *
2653
- * Connect to the integration's MCP server and list every tool it offers.
2654
- *
2655
- * A live call to the provider, so it also proves the connection works. The
2656
- * list is unfiltered — it is what tool approval is chosen from. Which of these
2657
- * an attached agent can actually call is the integration's `allowed_tools`
2658
- * (null there means all of them). Fails if the integration is not active or
2659
- * the server is unreachable.
2660
- */
2661
- list(parameters, options) {
2662
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'integration_id' }] }]);
2663
- return (options?.client ?? this.client).get({
2664
- responseStyle: 'data',
2665
- security: [{ scheme: 'bearer', type: 'http' }, {
2666
- in: 'cookie',
2667
- name: 'talqing_session',
2668
- type: 'apiKey'
2669
- }],
2670
- url: '/v1/integrations/{integration_id}/mcp-tools',
2671
- ...options,
2672
- ...params
2673
- });
2674
- }
2675
- }
2676
- exports.McpTools = McpTools;
2677
- class Triggers extends HeyApiClient {
2678
- /**
2679
- * List Integration Triggers
2680
- *
2681
- * List the trigger deployments under an integration.
2682
- *
2683
- * A trigger binds an inbound provider event — a Telegram message — to a
2684
- * published agent version.
2685
- */
2686
- list(parameters, options) {
2687
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [
2688
- { in: 'path', key: 'integration_id' },
2689
- { in: 'query', key: 'limit' },
2690
- { in: 'query', key: 'offset' }
2691
- ] }]);
2692
- return (options?.client ?? this.client).get({
2693
- responseStyle: 'data',
2694
- security: [{ scheme: 'bearer', type: 'http' }, {
2695
- in: 'cookie',
2696
- name: 'talqing_session',
2697
- type: 'apiKey'
2698
- }],
2699
- url: '/v1/integrations/{integration_id}/triggers',
2700
- ...options,
2701
- ...params
2702
- });
2703
- }
2593
+ class Entries extends HeyApiClient {
2704
2594
  /**
2705
- * Create Integration Trigger
2706
- *
2707
- * Deploy an agent to an inbound provider event.
2595
+ * Create Faq Entries
2708
2596
  *
2709
- * `reply_mode` decides what happens with the agent's answer: `public_reply`
2710
- * sends it to the customer, `internal_note` posts it privately where the
2711
- * provider supports that, `none` generates without sending.
2712
- *
2713
- * Enabling validates that the integration is active and the assigned agent is
2714
- * a published text agent, so create disabled while still wiring things up.
2597
+ * Append question/answer entries to an FAQ, all or nothing. Live at once:
2598
+ * agents using the FAQ read them from their next session.
2715
2599
  */
2716
2600
  create(parameters, options) {
2717
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'integration_id' }, { key: 'createIntegrationTriggerRequest', map: 'body' }] }]);
2601
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'faq_id' }, { key: 'createFaqEntriesRequest', map: 'body' }] }]);
2718
2602
  return (options?.client ?? this.client).post({
2719
2603
  responseStyle: 'data',
2720
2604
  security: [{ scheme: 'bearer', type: 'http' }, {
@@ -2722,7 +2606,7 @@ class Triggers extends HeyApiClient {
2722
2606
  name: 'talqing_session',
2723
2607
  type: 'apiKey'
2724
2608
  }],
2725
- url: '/v1/integrations/{integration_id}/triggers',
2609
+ url: '/v1/faqs/{faq_id}/entries',
2726
2610
  ...options,
2727
2611
  ...params,
2728
2612
  headers: {
@@ -2733,12 +2617,12 @@ class Triggers extends HeyApiClient {
2733
2617
  });
2734
2618
  }
2735
2619
  /**
2736
- * Delete Integration Trigger
2620
+ * Delete Faq Entry
2737
2621
  *
2738
- * Delete a trigger permanently. The agent stops receiving that event.
2622
+ * Delete one entry from an FAQ.
2739
2623
  */
2740
2624
  delete(parameters, options) {
2741
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'integration_id' }, { in: 'path', key: 'trigger_id' }] }]);
2625
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'faq_id' }, { in: 'path', key: 'entry_id' }] }]);
2742
2626
  return (options?.client ?? this.client).delete({
2743
2627
  responseStyle: 'data',
2744
2628
  security: [{ scheme: 'bearer', type: 'http' }, {
@@ -2746,25 +2630,21 @@ class Triggers extends HeyApiClient {
2746
2630
  name: 'talqing_session',
2747
2631
  type: 'apiKey'
2748
2632
  }],
2749
- url: '/v1/integrations/{integration_id}/triggers/{trigger_id}',
2633
+ url: '/v1/faqs/{faq_id}/entries/{entry_id}',
2750
2634
  ...options,
2751
2635
  ...params
2752
2636
  });
2753
2637
  }
2754
2638
  /**
2755
- * Patch Integration Trigger
2756
- *
2757
- * Update a trigger: reassign the agent, change reply mode, enable or
2758
- * disable it.
2639
+ * Update Faq Entry
2759
2640
  *
2760
- * Omitted fields are left unchanged, and enabling one runs the same checks
2761
- * creating it did.
2641
+ * Change one entry's question, answer or both. Live from the next session.
2762
2642
  */
2763
2643
  update(parameters, options) {
2764
2644
  const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [
2765
- { in: 'path', key: 'integration_id' },
2766
- { in: 'path', key: 'trigger_id' },
2767
- { key: 'patchIntegrationTriggerRequest', map: 'body' }
2645
+ { in: 'path', key: 'faq_id' },
2646
+ { in: 'path', key: 'entry_id' },
2647
+ { key: 'updateFaqEntryRequest', map: 'body' }
2768
2648
  ] }]);
2769
2649
  return (options?.client ?? this.client).patch({
2770
2650
  responseStyle: 'data',
@@ -2773,7 +2653,7 @@ class Triggers extends HeyApiClient {
2773
2653
  name: 'talqing_session',
2774
2654
  type: 'apiKey'
2775
2655
  }],
2776
- url: '/v1/integrations/{integration_id}/triggers/{trigger_id}',
2656
+ url: '/v1/faqs/{faq_id}/entries/{entry_id}',
2777
2657
  ...options,
2778
2658
  ...params,
2779
2659
  headers: {
@@ -2784,15 +2664,12 @@ class Triggers extends HeyApiClient {
2784
2664
  });
2785
2665
  }
2786
2666
  }
2787
- exports.Triggers = Triggers;
2788
- class Integrations extends HeyApiClient {
2667
+ exports.Entries = Entries;
2668
+ class Faqs extends HeyApiClient {
2789
2669
  /**
2790
- * List Integrations
2791
- *
2792
- * List the workspace's integrations with their provider, status and config.
2670
+ * List Faqs
2793
2671
  *
2794
- * Secret values are never returned — credential fields come back as
2795
- * `{{secrets.NAME}}` references.
2672
+ * List the workspace's FAQs by name, with how many questions each holds.
2796
2673
  */
2797
2674
  list(parameters, options) {
2798
2675
  const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'query', key: 'limit' }, { in: 'query', key: 'offset' }] }]);
@@ -2803,26 +2680,18 @@ class Integrations extends HeyApiClient {
2803
2680
  name: 'talqing_session',
2804
2681
  type: 'apiKey'
2805
2682
  }],
2806
- url: '/v1/integrations',
2683
+ url: '/v1/faqs',
2807
2684
  ...options,
2808
2685
  ...params
2809
2686
  });
2810
2687
  }
2811
2688
  /**
2812
- * Create Integration
2813
- *
2814
- * Create a manual integration, fully configured.
2815
- *
2816
- * Which of `credentials_ref`, `provider_account_info`, `mcp_config` and
2817
- * `webhook_config` a provider needs is described by its `setup_fields` in the
2818
- * integration catalog. Secret-bearing fields take a plaintext value — stored
2819
- * as a workspace secret — or an existing `{{secrets.NAME}}` reference.
2689
+ * Create Faq
2820
2690
  *
2821
- * Leave `allowed_tools` unset to expose every tool the server lists. OAuth
2822
- * providers are connected from the dashboard instead.
2691
+ * Create an FAQ, optionally with its first question/answer entries.
2823
2692
  */
2824
2693
  create(parameters, options) {
2825
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ key: 'createIntegrationRequest', map: 'body' }] }]);
2694
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ key: 'faqDefinition', map: 'body' }] }]);
2826
2695
  return (options?.client ?? this.client).post({
2827
2696
  responseStyle: 'data',
2828
2697
  security: [{ scheme: 'bearer', type: 'http' }, {
@@ -2830,7 +2699,7 @@ class Integrations extends HeyApiClient {
2830
2699
  name: 'talqing_session',
2831
2700
  type: 'apiKey'
2832
2701
  }],
2833
- url: '/v1/integrations',
2702
+ url: '/v1/faqs',
2834
2703
  ...options,
2835
2704
  ...params,
2836
2705
  headers: {
@@ -2841,36 +2710,13 @@ class Integrations extends HeyApiClient {
2841
2710
  });
2842
2711
  }
2843
2712
  /**
2844
- * Integration Catalog
2845
- *
2846
- * List the providers that can be integrated, and how to connect each one.
2847
- *
2848
- * `auth_type` says which path a provider takes: `manual` through this API,
2849
- * `oauth` from the dashboard. `setup_fields` is the authoritative list of what
2850
- * each manual provider requires — read it rather than guessing. `capabilities`
2851
- * says whether it serves tools (MCP) or a messaging channel (triggers).
2852
- */
2853
- catalog(parameters, options) {
2854
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'query', key: 'limit' }, { in: 'query', key: 'offset' }] }]);
2855
- return (options?.client ?? this.client).get({
2856
- responseStyle: 'data',
2857
- security: [{ scheme: 'bearer', type: 'http' }, {
2858
- in: 'cookie',
2859
- name: 'talqing_session',
2860
- type: 'apiKey'
2861
- }],
2862
- url: '/v1/integrations/catalog',
2863
- ...options,
2864
- ...params
2865
- });
2866
- }
2867
- /**
2868
- * Delete Integration
2713
+ * Delete Faq
2869
2714
  *
2870
- * Delete an integration and its triggers permanently.
2715
+ * Delete an FAQ and its entries. Refused with 409 while an agent or task
2716
+ * still attaches it.
2871
2717
  */
2872
2718
  delete(parameters, options) {
2873
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'integration_id' }] }]);
2719
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'faq_id' }] }]);
2874
2720
  return (options?.client ?? this.client).delete({
2875
2721
  responseStyle: 'data',
2876
2722
  security: [{ scheme: 'bearer', type: 'http' }, {
@@ -2878,19 +2724,18 @@ class Integrations extends HeyApiClient {
2878
2724
  name: 'talqing_session',
2879
2725
  type: 'apiKey'
2880
2726
  }],
2881
- url: '/v1/integrations/{integration_id}',
2727
+ url: '/v1/faqs/{faq_id}',
2882
2728
  ...options,
2883
2729
  ...params
2884
2730
  });
2885
2731
  }
2886
2732
  /**
2887
- * Get Integration
2733
+ * Get Faq
2888
2734
  *
2889
- * Fetch one integration: provider, status, structured config, trigger
2890
- * capabilities and inbound webhook setup state.
2735
+ * Get one FAQ with every entry, in the order they were added.
2891
2736
  */
2892
2737
  get(parameters, options) {
2893
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'integration_id' }] }]);
2738
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'faq_id' }] }]);
2894
2739
  return (options?.client ?? this.client).get({
2895
2740
  responseStyle: 'data',
2896
2741
  security: [{ scheme: 'bearer', type: 'http' }, {
@@ -2898,26 +2743,18 @@ class Integrations extends HeyApiClient {
2898
2743
  name: 'talqing_session',
2899
2744
  type: 'apiKey'
2900
2745
  }],
2901
- url: '/v1/integrations/{integration_id}',
2746
+ url: '/v1/faqs/{faq_id}',
2902
2747
  ...options,
2903
2748
  ...params
2904
2749
  });
2905
2750
  }
2906
2751
  /**
2907
- * Patch Integration
2908
- *
2909
- * Update an integration. Omitted fields are left unchanged.
2752
+ * Update Faq
2910
2753
  *
2911
- * Sending `credentials_ref` rotates the credential. Only `active` integrations
2912
- * can be attached to agents or serve triggers.
2913
- *
2914
- * `allowed_tools` replaces the approved list wholesale: exactly those tools
2915
- * become callable by every agent this integration is attached to. It cannot be
2916
- * emptied — an agent that should call nothing is an integration that should be
2917
- * disabled.
2754
+ * Rename an FAQ.
2918
2755
  */
2919
2756
  update(parameters, options) {
2920
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'integration_id' }, { key: 'patchIntegrationRequest', map: 'body' }] }]);
2757
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'faq_id' }, { key: 'updateFaqRequest', map: 'body' }] }]);
2921
2758
  return (options?.client ?? this.client).patch({
2922
2759
  responseStyle: 'data',
2923
2760
  security: [{ scheme: 'bearer', type: 'http' }, {
@@ -2925,7 +2762,7 @@ class Integrations extends HeyApiClient {
2925
2762
  name: 'talqing_session',
2926
2763
  type: 'apiKey'
2927
2764
  }],
2928
- url: '/v1/integrations/{integration_id}',
2765
+ url: '/v1/faqs/{faq_id}',
2929
2766
  ...options,
2930
2767
  ...params,
2931
2768
  headers: {
@@ -2935,46 +2772,54 @@ class Integrations extends HeyApiClient {
2935
2772
  }
2936
2773
  });
2937
2774
  }
2938
- get mcpTools() {
2939
- return this._mcpTools ?? (this._mcpTools = new McpTools({ client: this.client }));
2940
- }
2941
- get triggers() {
2942
- return this._triggers ?? (this._triggers = new Triggers({ client: this.client }));
2775
+ get entries() {
2776
+ return this._entries ?? (this._entries = new Entries({ client: this.client }));
2943
2777
  }
2944
2778
  }
2945
- exports.Integrations = Integrations;
2946
- class Nodes extends HeyApiClient {
2779
+ exports.Faqs = Faqs;
2780
+ class McpTools extends HeyApiClient {
2947
2781
  /**
2948
- * Delete Node
2782
+ * List Integration Mcp Tools
2949
2783
  *
2950
- * Drop one entry from the table of contents, permanently.
2784
+ * Connect to the integration's MCP server and list every tool it offers.
2951
2785
  *
2952
- * Its children go with it, and agents can no longer retrieve any of it.
2786
+ * A live call to the provider, so it also proves the connection works. The
2787
+ * list is unfiltered — it is what tool approval is chosen from. Which of these
2788
+ * an attached agent can actually call is the integration's `allowed_tools`
2789
+ * (null there means all of them). Fails if the integration is not active or
2790
+ * the server is unreachable.
2953
2791
  */
2954
- delete(parameters, options) {
2955
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'kb_id' }, { in: 'path', key: 'node_id' }] }]);
2956
- return (options?.client ?? this.client).delete({
2792
+ list(parameters, options) {
2793
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'integration_id' }] }]);
2794
+ return (options?.client ?? this.client).get({
2957
2795
  responseStyle: 'data',
2958
2796
  security: [{ scheme: 'bearer', type: 'http' }, {
2959
2797
  in: 'cookie',
2960
2798
  name: 'talqing_session',
2961
2799
  type: 'apiKey'
2962
2800
  }],
2963
- url: '/v1/knowledge/{kb_id}/nodes/{node_id}',
2801
+ url: '/v1/integrations/{integration_id}/mcp-tools',
2964
2802
  ...options,
2965
2803
  ...params
2966
2804
  });
2967
2805
  }
2806
+ }
2807
+ exports.McpTools = McpTools;
2808
+ class Triggers extends HeyApiClient {
2968
2809
  /**
2969
- * Get Node
2810
+ * List Integration Triggers
2970
2811
  *
2971
- * Read one entry of the table of contents, with its full content.
2812
+ * List the trigger deployments under an integration.
2972
2813
  *
2973
- * This is the text an agent retrieves when it fetches this node. `version` is
2974
- * what `patch_node` needs for a safe edit.
2814
+ * A trigger binds an inbound provider event — a Telegram message — to a
2815
+ * published agent version.
2975
2816
  */
2976
- get(parameters, options) {
2977
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'kb_id' }, { in: 'path', key: 'node_id' }] }]);
2817
+ list(parameters, options) {
2818
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [
2819
+ { in: 'path', key: 'integration_id' },
2820
+ { in: 'query', key: 'limit' },
2821
+ { in: 'query', key: 'offset' }
2822
+ ] }]);
2978
2823
  return (options?.client ?? this.client).get({
2979
2824
  responseStyle: 'data',
2980
2825
  security: [{ scheme: 'bearer', type: 'http' }, {
@@ -2982,37 +2827,33 @@ class Nodes extends HeyApiClient {
2982
2827
  name: 'talqing_session',
2983
2828
  type: 'apiKey'
2984
2829
  }],
2985
- url: '/v1/knowledge/{kb_id}/nodes/{node_id}',
2830
+ url: '/v1/integrations/{integration_id}/triggers',
2986
2831
  ...options,
2987
2832
  ...params
2988
2833
  });
2989
2834
  }
2990
2835
  /**
2991
- * Patch Node
2836
+ * Create Integration Trigger
2992
2837
  *
2993
- * Correct one entry's title, summary or content by hand — the way to fix a
2994
- * fact the crawl got wrong without rebuilding.
2838
+ * Deploy an agent to an inbound provider event.
2995
2839
  *
2996
- * `title` and `summary` are what the agent sees in the table of contents and
2997
- * decide whether it ever fetches this node, so keep them accurate.
2840
+ * `reply_mode` decides what happens with the agent's answer: `public_reply`
2841
+ * sends it to the customer, `internal_note` posts it privately where the
2842
+ * provider supports that, `none` generates without sending.
2998
2843
  *
2999
- * Send the `version` you read from `get_node`; a mismatch is rejected rather
3000
- * than overwriting someone else's edit.
2844
+ * Enabling validates that the integration is active and the assigned agent is
2845
+ * a published text agent, so create disabled while still wiring things up.
3001
2846
  */
3002
- update(parameters, options) {
3003
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [
3004
- { in: 'path', key: 'kb_id' },
3005
- { in: 'path', key: 'node_id' },
3006
- { key: 'patchNodeRequest', map: 'body' }
3007
- ] }]);
3008
- return (options?.client ?? this.client).patch({
2847
+ create(parameters, options) {
2848
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'integration_id' }, { key: 'createIntegrationTriggerRequest', map: 'body' }] }]);
2849
+ return (options?.client ?? this.client).post({
3009
2850
  responseStyle: 'data',
3010
2851
  security: [{ scheme: 'bearer', type: 'http' }, {
3011
2852
  in: 'cookie',
3012
2853
  name: 'talqing_session',
3013
2854
  type: 'apiKey'
3014
2855
  }],
3015
- url: '/v1/knowledge/{kb_id}/nodes/{node_id}',
2856
+ url: '/v1/integrations/{integration_id}/triggers',
3016
2857
  ...options,
3017
2858
  ...params,
3018
2859
  headers: {
@@ -3022,82 +2863,48 @@ class Nodes extends HeyApiClient {
3022
2863
  }
3023
2864
  });
3024
2865
  }
3025
- }
3026
- exports.Nodes = Nodes;
3027
- class Pages extends HeyApiClient {
3028
- /**
3029
- * List Pages
3030
- *
3031
- * List the crawled pages and how each one transcribed.
3032
- *
3033
- * Where you look when a knowledge base is missing something: a page with a
3034
- * non-`done` status and an `error` never made it in, and `content_len` of 0
3035
- * means the URL yielded nothing worth indexing.
3036
- */
3037
- list(parameters, options) {
3038
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [
3039
- { in: 'path', key: 'kb_id' },
3040
- { in: 'query', key: 'limit' },
3041
- { in: 'query', key: 'offset' }
3042
- ] }]);
3043
- return (options?.client ?? this.client).get({
3044
- responseStyle: 'data',
3045
- security: [{ scheme: 'bearer', type: 'http' }, {
3046
- in: 'cookie',
3047
- name: 'talqing_session',
3048
- type: 'apiKey'
3049
- }],
3050
- url: '/v1/knowledge/{kb_id}/pages',
3051
- ...options,
3052
- ...params
3053
- });
3054
- }
3055
- }
3056
- exports.Pages = Pages;
3057
- class Knowledge2 extends HeyApiClient {
3058
2866
  /**
3059
- * List Kbs
3060
- *
3061
- * List the workspace's knowledge bases with their build status.
2867
+ * Delete Integration Trigger
3062
2868
  *
3063
- * A knowledge base gives an agent grounded answers over crawled content. Only
3064
- * one with status `ready` can be attached to an agent, through the agent
3065
- * config's `kb_ids`.
2869
+ * Delete a trigger permanently. The agent stops receiving that event.
3066
2870
  */
3067
- list(parameters, options) {
3068
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'query', key: 'limit' }, { in: 'query', key: 'offset' }] }]);
3069
- return (options?.client ?? this.client).get({
2871
+ delete(parameters, options) {
2872
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'integration_id' }, { in: 'path', key: 'trigger_id' }] }]);
2873
+ return (options?.client ?? this.client).delete({
3070
2874
  responseStyle: 'data',
3071
2875
  security: [{ scheme: 'bearer', type: 'http' }, {
3072
2876
  in: 'cookie',
3073
2877
  name: 'talqing_session',
3074
2878
  type: 'apiKey'
3075
2879
  }],
3076
- url: '/v1/knowledge',
2880
+ url: '/v1/integrations/{integration_id}/triggers/{trigger_id}',
3077
2881
  ...options,
3078
2882
  ...params
3079
2883
  });
3080
2884
  }
3081
2885
  /**
3082
- * Create Kb
2886
+ * Patch Integration Trigger
3083
2887
  *
3084
- * Start a knowledge base by crawling one or more websites.
2888
+ * Update a trigger: reassign the agent, change reply mode, enable or
2889
+ * disable it.
3085
2890
  *
3086
- * Returns immediately with `status: discovering` — crawling takes minutes.
3087
- * Poll `get_kb` until `review`, then pass the URLs worth indexing to
3088
- * `build_kb`. `max_pages` caps how many discovery may find (default 1000) and
3089
- * `notes` guides how the content is transcribed and organized.
2891
+ * Omitted fields are left unchanged, and enabling one runs the same checks
2892
+ * creating it did.
3090
2893
  */
3091
- create(parameters, options) {
3092
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ key: 'createKbRequest', map: 'body' }] }]);
3093
- return (options?.client ?? this.client).post({
2894
+ update(parameters, options) {
2895
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [
2896
+ { in: 'path', key: 'integration_id' },
2897
+ { in: 'path', key: 'trigger_id' },
2898
+ { key: 'patchIntegrationTriggerRequest', map: 'body' }
2899
+ ] }]);
2900
+ return (options?.client ?? this.client).patch({
3094
2901
  responseStyle: 'data',
3095
2902
  security: [{ scheme: 'bearer', type: 'http' }, {
3096
2903
  in: 'cookie',
3097
2904
  name: 'talqing_session',
3098
2905
  type: 'apiKey'
3099
2906
  }],
3100
- url: '/v1/knowledge',
2907
+ url: '/v1/integrations/{integration_id}/triggers/{trigger_id}',
3101
2908
  ...options,
3102
2909
  ...params,
3103
2910
  headers: {
@@ -3107,115 +2914,114 @@ class Knowledge2 extends HeyApiClient {
3107
2914
  }
3108
2915
  });
3109
2916
  }
2917
+ }
2918
+ exports.Triggers = Triggers;
2919
+ class Integrations extends HeyApiClient {
3110
2920
  /**
3111
- * Delete Kb
2921
+ * List Integrations
3112
2922
  *
3113
- * Delete a knowledge base and everything crawled into it, permanently.
2923
+ * List the workspace's integrations with their provider, status and config.
3114
2924
  *
3115
- * Rebuilding means crawling the site again. Agents that list it in `kb_ids`
3116
- * lose those grounded answers, so detach it there first.
2925
+ * Secret values are never returned — credential fields come back as
2926
+ * `{{secrets.NAME}}` references.
3117
2927
  */
3118
- delete(parameters, options) {
3119
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'kb_id' }] }]);
3120
- return (options?.client ?? this.client).delete({
2928
+ list(parameters, options) {
2929
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'query', key: 'limit' }, { in: 'query', key: 'offset' }] }]);
2930
+ return (options?.client ?? this.client).get({
3121
2931
  responseStyle: 'data',
3122
2932
  security: [{ scheme: 'bearer', type: 'http' }, {
3123
2933
  in: 'cookie',
3124
2934
  name: 'talqing_session',
3125
2935
  type: 'apiKey'
3126
2936
  }],
3127
- url: '/v1/knowledge/{kb_id}',
2937
+ url: '/v1/integrations',
3128
2938
  ...options,
3129
2939
  ...params
3130
2940
  });
3131
2941
  }
3132
2942
  /**
3133
- * Get Kb
2943
+ * Create Integration
3134
2944
  *
3135
- * Read one knowledge base: build status, progress and content tree.
2945
+ * Create a manual integration, fully configured.
2946
+ *
2947
+ * Which of `credentials_ref`, `provider_account_info`, `mcp_config` and
2948
+ * `webhook_config` a provider needs is described by its `setup_fields` in the
2949
+ * integration catalog. Secret-bearing fields take a plaintext value — stored
2950
+ * as a workspace secret — or an existing `{{secrets.NAME}}` reference.
3136
2951
  *
3137
- * `status` walks `discovering` -> `review` -> `transcribing` -> `generating`
3138
- * -> `ready`, with `error` set if it stopped. At `review`, `discovered` holds
3139
- * the crawled URLs awaiting your selection; once ready, `tree` is the table of
3140
- * contents. This is the endpoint to poll while a build runs.
2952
+ * Leave `allowed_tools` unset to expose every tool the server lists. OAuth
2953
+ * providers are connected from the dashboard instead.
3141
2954
  */
3142
- get(parameters, options) {
3143
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'kb_id' }] }]);
3144
- return (options?.client ?? this.client).get({
2955
+ create(parameters, options) {
2956
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ key: 'createIntegrationRequest', map: 'body' }] }]);
2957
+ return (options?.client ?? this.client).post({
3145
2958
  responseStyle: 'data',
3146
2959
  security: [{ scheme: 'bearer', type: 'http' }, {
3147
2960
  in: 'cookie',
3148
2961
  name: 'talqing_session',
3149
2962
  type: 'apiKey'
3150
2963
  }],
3151
- url: '/v1/knowledge/{kb_id}',
2964
+ url: '/v1/integrations',
3152
2965
  ...options,
3153
- ...params
2966
+ ...params,
2967
+ headers: {
2968
+ 'Content-Type': 'application/json',
2969
+ ...options?.headers,
2970
+ ...params.headers
2971
+ }
3154
2972
  });
3155
2973
  }
3156
2974
  /**
3157
- * Build Kb
2975
+ * Integration Catalog
3158
2976
  *
3159
- * Index the chosen pages, then write the table of contents.
2977
+ * List the providers that can be integrated, and how to connect each one.
3160
2978
  *
3161
- * Call this once the knowledge base reaches `review`, passing the subset of
3162
- * `discovered` URLs worth indexing — the KB is only as good as that choice.
3163
- * Returns as soon as the work is queued; poll `get_kb` until `ready`, which is
3164
- * when it can be attached to an agent.
2979
+ * `auth_type` says which path a provider takes: `manual` through this API,
2980
+ * `oauth` from the dashboard. `setup_fields` is the authoritative list of what
2981
+ * each manual provider requires — read it rather than guessing. `capabilities`
2982
+ * says whether it serves tools (MCP) or a messaging channel (triggers).
3165
2983
  */
3166
- build(parameters, options) {
3167
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'kb_id' }, { key: 'buildKbRequest', map: 'body' }] }]);
3168
- return (options?.client ?? this.client).post({
2984
+ catalog(parameters, options) {
2985
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'query', key: 'limit' }, { in: 'query', key: 'offset' }] }]);
2986
+ return (options?.client ?? this.client).get({
3169
2987
  responseStyle: 'data',
3170
2988
  security: [{ scheme: 'bearer', type: 'http' }, {
3171
2989
  in: 'cookie',
3172
2990
  name: 'talqing_session',
3173
2991
  type: 'apiKey'
3174
2992
  }],
3175
- url: '/v1/knowledge/{kb_id}/build',
2993
+ url: '/v1/integrations/catalog',
3176
2994
  ...options,
3177
- ...params,
3178
- headers: {
3179
- 'Content-Type': 'application/json',
3180
- ...options?.headers,
3181
- ...params.headers
3182
- }
2995
+ ...params
3183
2996
  });
3184
2997
  }
3185
2998
  /**
3186
- * Events
3187
- *
3188
- * Watch one knowledge base build: `snapshot` first, then `progress` and `status`.
2999
+ * Delete Integration
3189
3000
  *
3190
- * `progress` carries the per-stage counts, `status` the terminal verdict
3191
- * (`ready`, or an `error`). The same state is readable at any time with
3192
- * `get_kb`; this is the live view of it.
3001
+ * Delete an integration and its triggers permanently.
3193
3002
  */
3194
- events(parameters, options) {
3195
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'kb_id' }] }]);
3196
- return (options?.client ?? this.client).sse.get({
3003
+ delete(parameters, options) {
3004
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'integration_id' }] }]);
3005
+ return (options?.client ?? this.client).delete({
3197
3006
  responseStyle: 'data',
3198
3007
  security: [{ scheme: 'bearer', type: 'http' }, {
3199
3008
  in: 'cookie',
3200
3009
  name: 'talqing_session',
3201
3010
  type: 'apiKey'
3202
3011
  }],
3203
- url: '/v1/knowledge/{kb_id}/events',
3012
+ url: '/v1/integrations/{integration_id}',
3204
3013
  ...options,
3205
3014
  ...params
3206
3015
  });
3207
3016
  }
3208
3017
  /**
3209
- * Get Kb Prompt
3210
- *
3211
- * The table of contents exactly as an agent using this KB is given it.
3018
+ * Get Integration
3212
3019
  *
3213
- * Read it to judge what the agent can actually find — if a topic reads
3214
- * vaguely here, the agent will not know to fetch it. `chars` is how much of
3215
- * the agent's context this KB occupies.
3020
+ * Fetch one integration: provider, status, structured config, trigger
3021
+ * capabilities and inbound webhook setup state.
3216
3022
  */
3217
- prompt(parameters, options) {
3218
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'kb_id' }] }]);
3023
+ get(parameters, options) {
3024
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'integration_id' }] }]);
3219
3025
  return (options?.client ?? this.client).get({
3220
3026
  responseStyle: 'data',
3221
3027
  security: [{ scheme: 'bearer', type: 'http' }, {
@@ -3223,42 +3029,51 @@ class Knowledge2 extends HeyApiClient {
3223
3029
  name: 'talqing_session',
3224
3030
  type: 'apiKey'
3225
3031
  }],
3226
- url: '/v1/knowledge/{kb_id}/prompt',
3032
+ url: '/v1/integrations/{integration_id}',
3227
3033
  ...options,
3228
3034
  ...params
3229
3035
  });
3230
3036
  }
3231
3037
  /**
3232
- * Regenerate Toc
3038
+ * Patch Integration
3039
+ *
3040
+ * Update an integration. Omitted fields are left unchanged.
3233
3041
  *
3234
- * Rewrite the table of contents from the pages already indexed.
3042
+ * Sending `credentials_ref` rotates the credential. Only `active` integrations
3043
+ * can be attached to agents or serve triggers.
3235
3044
  *
3236
- * The repair for a knowledge base whose structure came out wrong, or whose
3237
- * build failed at the last stage: it re-runs only that stage, so the site is
3238
- * not crawled or transcribed again.
3045
+ * `allowed_tools` replaces the approved list wholesale: exactly those tools
3046
+ * become callable by every agent this integration is attached to. It cannot be
3047
+ * emptied — an agent that should call nothing is an integration that should be
3048
+ * disabled.
3239
3049
  */
3240
- regenerateToc(parameters, options) {
3241
- const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'kb_id' }] }]);
3242
- return (options?.client ?? this.client).post({
3050
+ update(parameters, options) {
3051
+ const params = (0, index_js_1.buildClientParams)([parameters], [{ args: [{ in: 'path', key: 'integration_id' }, { key: 'patchIntegrationRequest', map: 'body' }] }]);
3052
+ return (options?.client ?? this.client).patch({
3243
3053
  responseStyle: 'data',
3244
3054
  security: [{ scheme: 'bearer', type: 'http' }, {
3245
3055
  in: 'cookie',
3246
3056
  name: 'talqing_session',
3247
3057
  type: 'apiKey'
3248
3058
  }],
3249
- url: '/v1/knowledge/{kb_id}/toc',
3059
+ url: '/v1/integrations/{integration_id}',
3250
3060
  ...options,
3251
- ...params
3061
+ ...params,
3062
+ headers: {
3063
+ 'Content-Type': 'application/json',
3064
+ ...options?.headers,
3065
+ ...params.headers
3066
+ }
3252
3067
  });
3253
3068
  }
3254
- get nodes() {
3255
- return this._nodes ?? (this._nodes = new Nodes({ client: this.client }));
3069
+ get mcpTools() {
3070
+ return this._mcpTools ?? (this._mcpTools = new McpTools({ client: this.client }));
3256
3071
  }
3257
- get pages() {
3258
- return this._pages ?? (this._pages = new Pages({ client: this.client }));
3072
+ get triggers() {
3073
+ return this._triggers ?? (this._triggers = new Triggers({ client: this.client }));
3259
3074
  }
3260
3075
  }
3261
- exports.Knowledge2 = Knowledge2;
3076
+ exports.Integrations = Integrations;
3262
3077
  class Observability extends HeyApiClient {
3263
3078
  /**
3264
3079
  * Get Observability
@@ -5164,12 +4979,12 @@ class TalqingApi extends HeyApiClient {
5164
4979
  get email() {
5165
4980
  return this._email ?? (this._email = new Email({ client: this.client }));
5166
4981
  }
4982
+ get faqs() {
4983
+ return this._faqs ?? (this._faqs = new Faqs({ client: this.client }));
4984
+ }
5167
4985
  get integrations() {
5168
4986
  return this._integrations ?? (this._integrations = new Integrations({ client: this.client }));
5169
4987
  }
5170
- get knowledge() {
5171
- return this._knowledge ?? (this._knowledge = new Knowledge2({ client: this.client }));
5172
- }
5173
4988
  get observability() {
5174
4989
  return this._observability ?? (this._observability = new Observability({ client: this.client }));
5175
4990
  }