@runtypelabs/sdk 4.5.0 → 4.6.1

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.
package/dist/index.d.cts CHANGED
@@ -6804,6 +6804,95 @@ interface paths {
6804
6804
  patch?: never;
6805
6805
  trace?: never;
6806
6806
  };
6807
+ "/v1/docs/search": {
6808
+ parameters: {
6809
+ query?: never;
6810
+ header?: never;
6811
+ path?: never;
6812
+ cookie?: never;
6813
+ };
6814
+ get?: never;
6815
+ put?: never;
6816
+ /**
6817
+ * Search documentation
6818
+ * @description Semantic search over the published Runtype documentation corpus. Returns a synthesized answer with citations. Use this for prose/how-to questions; for deterministic schemas and build guidance use the /v1/documentation endpoints.
6819
+ */
6820
+ post: {
6821
+ parameters: {
6822
+ query?: never;
6823
+ header?: never;
6824
+ path?: never;
6825
+ cookie?: never;
6826
+ };
6827
+ requestBody?: {
6828
+ content: {
6829
+ "application/json": {
6830
+ /** @description Natural-language documentation question. */
6831
+ query: string;
6832
+ };
6833
+ };
6834
+ };
6835
+ responses: {
6836
+ /** @description Documentation search result (MCP content blocks) */
6837
+ 200: {
6838
+ headers: {
6839
+ [name: string]: unknown;
6840
+ };
6841
+ content: {
6842
+ "application/json": {
6843
+ content: ({
6844
+ text?: string;
6845
+ type: string;
6846
+ } & {
6847
+ [key: string]: unknown;
6848
+ })[];
6849
+ };
6850
+ };
6851
+ };
6852
+ /** @description Invalid parameters */
6853
+ 400: {
6854
+ headers: {
6855
+ [name: string]: unknown;
6856
+ };
6857
+ content: {
6858
+ "application/json": components["schemas"]["Error"];
6859
+ };
6860
+ };
6861
+ /** @description Unauthorized */
6862
+ 401: {
6863
+ headers: {
6864
+ [name: string]: unknown;
6865
+ };
6866
+ content: {
6867
+ "application/json": components["schemas"]["Error"];
6868
+ };
6869
+ };
6870
+ /** @description Documentation search is not enabled */
6871
+ 403: {
6872
+ headers: {
6873
+ [name: string]: unknown;
6874
+ };
6875
+ content: {
6876
+ "application/json": components["schemas"]["Error"];
6877
+ };
6878
+ };
6879
+ /** @description Upstream documentation search failed */
6880
+ 502: {
6881
+ headers: {
6882
+ [name: string]: unknown;
6883
+ };
6884
+ content: {
6885
+ "application/json": components["schemas"]["Error"];
6886
+ };
6887
+ };
6888
+ };
6889
+ };
6890
+ delete?: never;
6891
+ options?: never;
6892
+ head?: never;
6893
+ patch?: never;
6894
+ trace?: never;
6895
+ };
6807
6896
  "/v1/documentation": {
6808
6897
  parameters: {
6809
6898
  query?: never;
@@ -13647,6 +13736,10 @@ interface paths {
13647
13736
  surface_id?: string;
13648
13737
  /** @description Filter by status (open, closed, archived, all) */
13649
13738
  status?: string;
13739
+ /** @description Filter by agent mode (auto, human, all) */
13740
+ agentMode?: string;
13741
+ /** @description Filter by agent mode (deprecated, use agentMode) */
13742
+ agent_mode?: string;
13650
13743
  /** @description Search by subject, participant name, or email */
13651
13744
  search?: string;
13652
13745
  };
@@ -13664,6 +13757,7 @@ interface paths {
13664
13757
  content: {
13665
13758
  "application/json": {
13666
13759
  data: ({
13760
+ agentMode: string;
13667
13761
  createdAt: string;
13668
13762
  externalParticipantId: string | null;
13669
13763
  externalThreadId: string | null;
@@ -13675,6 +13769,10 @@ interface paths {
13675
13769
  status: string;
13676
13770
  subject: string | null;
13677
13771
  surfaceId: string;
13772
+ takeoverActorId: string | null;
13773
+ takeoverActorType: string | null;
13774
+ takeoverAt: string | null;
13775
+ takeoverReason: string | null;
13678
13776
  timezone: string | null;
13679
13777
  updatedAt: string;
13680
13778
  } & {
@@ -13768,6 +13866,7 @@ interface paths {
13768
13866
  };
13769
13867
  content: {
13770
13868
  "application/json": {
13869
+ agentMode: string;
13771
13870
  context?: {
13772
13871
  [key: string]: unknown;
13773
13872
  };
@@ -13790,6 +13889,10 @@ interface paths {
13790
13889
  type: string | null;
13791
13890
  };
13792
13891
  surfaceId: string;
13892
+ takeoverActorId: string | null;
13893
+ takeoverActorType: string | null;
13894
+ takeoverAt: string | null;
13895
+ takeoverReason: string | null;
13793
13896
  timezone: string | null;
13794
13897
  updatedAt: string;
13795
13898
  } & {
@@ -13870,6 +13973,7 @@ interface paths {
13870
13973
  };
13871
13974
  content: {
13872
13975
  "application/json": {
13976
+ agentMode: string;
13873
13977
  context?: {
13874
13978
  [key: string]: unknown;
13875
13979
  };
@@ -13892,6 +13996,10 @@ interface paths {
13892
13996
  type: string | null;
13893
13997
  };
13894
13998
  surfaceId: string;
13999
+ takeoverActorId: string | null;
14000
+ takeoverActorType: string | null;
14001
+ takeoverAt: string | null;
14002
+ takeoverReason: string | null;
13895
14003
  timezone: string | null;
13896
14004
  updatedAt: string;
13897
14005
  } & {
@@ -13981,6 +14089,7 @@ interface paths {
13981
14089
  };
13982
14090
  content: {
13983
14091
  "application/json": {
14092
+ agentMode: string;
13984
14093
  context?: {
13985
14094
  [key: string]: unknown;
13986
14095
  };
@@ -14003,6 +14112,10 @@ interface paths {
14003
14112
  type: string | null;
14004
14113
  };
14005
14114
  surfaceId: string;
14115
+ takeoverActorId: string | null;
14116
+ takeoverActorType: string | null;
14117
+ takeoverAt: string | null;
14118
+ takeoverReason: string | null;
14006
14119
  timezone: string | null;
14007
14120
  updatedAt: string;
14008
14121
  } & {
@@ -14346,6 +14459,369 @@ interface paths {
14346
14459
  patch?: never;
14347
14460
  trace?: never;
14348
14461
  };
14462
+ "/v1/messaging/conversations/{id}/resume": {
14463
+ parameters: {
14464
+ query?: never;
14465
+ header?: never;
14466
+ path?: never;
14467
+ cookie?: never;
14468
+ };
14469
+ get?: never;
14470
+ put?: never;
14471
+ /**
14472
+ * Resume agent handling
14473
+ * @description Switch a messaging conversation from human-operator mode back to automatic agent handling.
14474
+ */
14475
+ post: {
14476
+ parameters: {
14477
+ query?: never;
14478
+ header?: never;
14479
+ path: {
14480
+ id: string;
14481
+ };
14482
+ cookie?: never;
14483
+ };
14484
+ requestBody?: never;
14485
+ responses: {
14486
+ /** @description Conversation resumed to auto mode */
14487
+ 200: {
14488
+ headers: {
14489
+ [name: string]: unknown;
14490
+ };
14491
+ content: {
14492
+ "application/json": {
14493
+ agentMode: string;
14494
+ id: string;
14495
+ takeoverActorId: string | null;
14496
+ takeoverActorType: string | null;
14497
+ takeoverAt: string | null;
14498
+ takeoverReason: string | null;
14499
+ updatedAt: string;
14500
+ } & {
14501
+ [key: string]: unknown;
14502
+ };
14503
+ };
14504
+ };
14505
+ /** @description Invalid request */
14506
+ 400: {
14507
+ headers: {
14508
+ [name: string]: unknown;
14509
+ };
14510
+ content: {
14511
+ "application/json": components["schemas"]["Error"];
14512
+ };
14513
+ };
14514
+ /** @description Unauthorized */
14515
+ 401: {
14516
+ headers: {
14517
+ [name: string]: unknown;
14518
+ };
14519
+ content: {
14520
+ "application/json": components["schemas"]["Error"];
14521
+ };
14522
+ };
14523
+ /** @description Insufficient permissions */
14524
+ 403: {
14525
+ headers: {
14526
+ [name: string]: unknown;
14527
+ };
14528
+ content: {
14529
+ "application/json": components["schemas"]["Error"];
14530
+ };
14531
+ };
14532
+ /** @description Conversation not found */
14533
+ 404: {
14534
+ headers: {
14535
+ [name: string]: unknown;
14536
+ };
14537
+ content: {
14538
+ "application/json": components["schemas"]["Error"];
14539
+ };
14540
+ };
14541
+ /** @description Conversation already in auto mode */
14542
+ 409: {
14543
+ headers: {
14544
+ [name: string]: unknown;
14545
+ };
14546
+ content: {
14547
+ "application/json": components["schemas"]["Error"];
14548
+ };
14549
+ };
14550
+ /** @description Internal server error */
14551
+ 500: {
14552
+ headers: {
14553
+ [name: string]: unknown;
14554
+ };
14555
+ content: {
14556
+ "application/json": components["schemas"]["Error"];
14557
+ };
14558
+ };
14559
+ };
14560
+ };
14561
+ delete?: never;
14562
+ options?: never;
14563
+ head?: never;
14564
+ patch?: never;
14565
+ trace?: never;
14566
+ };
14567
+ "/v1/messaging/conversations/{id}/send": {
14568
+ parameters: {
14569
+ query?: never;
14570
+ header?: never;
14571
+ path?: never;
14572
+ cookie?: never;
14573
+ };
14574
+ get?: never;
14575
+ put?: never;
14576
+ /**
14577
+ * Send human-authored message
14578
+ * @description Send a human-authored outbound message through the conversation's messaging channel.
14579
+ */
14580
+ post: {
14581
+ parameters: {
14582
+ query?: never;
14583
+ header?: never;
14584
+ path: {
14585
+ id: string;
14586
+ };
14587
+ cookie?: never;
14588
+ };
14589
+ requestBody?: {
14590
+ content: {
14591
+ "application/json": {
14592
+ content: string;
14593
+ metadata?: {
14594
+ attachments?: {
14595
+ contentType: string;
14596
+ name: string;
14597
+ size: number;
14598
+ url?: string;
14599
+ }[];
14600
+ externalTimestamp?: string;
14601
+ headers?: {
14602
+ [key: string]: string;
14603
+ };
14604
+ };
14605
+ /** @default true */
14606
+ requireHumanMode?: boolean;
14607
+ };
14608
+ };
14609
+ };
14610
+ responses: {
14611
+ /** @description Message sent to channel */
14612
+ 201: {
14613
+ headers: {
14614
+ [name: string]: unknown;
14615
+ };
14616
+ content: {
14617
+ "application/json": {
14618
+ deliveryResult: {
14619
+ deliveryStatus: string;
14620
+ externalMessageId: string | null;
14621
+ } & {
14622
+ [key: string]: unknown;
14623
+ };
14624
+ message: {
14625
+ content: string;
14626
+ conversationId: string;
14627
+ createdAt: string;
14628
+ direction: string | null;
14629
+ externalMessageId: string | null;
14630
+ id?: string;
14631
+ metadata: {
14632
+ [key: string]: unknown;
14633
+ };
14634
+ role: string;
14635
+ } & {
14636
+ [key: string]: unknown;
14637
+ };
14638
+ } & {
14639
+ [key: string]: unknown;
14640
+ };
14641
+ };
14642
+ };
14643
+ /** @description Invalid request */
14644
+ 400: {
14645
+ headers: {
14646
+ [name: string]: unknown;
14647
+ };
14648
+ content: {
14649
+ "application/json": components["schemas"]["Error"];
14650
+ };
14651
+ };
14652
+ /** @description Unauthorized */
14653
+ 401: {
14654
+ headers: {
14655
+ [name: string]: unknown;
14656
+ };
14657
+ content: {
14658
+ "application/json": components["schemas"]["Error"];
14659
+ };
14660
+ };
14661
+ /** @description Insufficient permissions */
14662
+ 403: {
14663
+ headers: {
14664
+ [name: string]: unknown;
14665
+ };
14666
+ content: {
14667
+ "application/json": components["schemas"]["Error"];
14668
+ };
14669
+ };
14670
+ /** @description Conversation not found */
14671
+ 404: {
14672
+ headers: {
14673
+ [name: string]: unknown;
14674
+ };
14675
+ content: {
14676
+ "application/json": components["schemas"]["Error"];
14677
+ };
14678
+ };
14679
+ /** @description Conversation or surface cannot be addressed */
14680
+ 422: {
14681
+ headers: {
14682
+ [name: string]: unknown;
14683
+ };
14684
+ content: {
14685
+ "application/json": components["schemas"]["Error"];
14686
+ };
14687
+ };
14688
+ /** @description Internal server error */
14689
+ 500: {
14690
+ headers: {
14691
+ [name: string]: unknown;
14692
+ };
14693
+ content: {
14694
+ "application/json": components["schemas"]["Error"];
14695
+ };
14696
+ };
14697
+ /** @description Channel delivery failed */
14698
+ 502: {
14699
+ headers: {
14700
+ [name: string]: unknown;
14701
+ };
14702
+ content: {
14703
+ "application/json": components["schemas"]["Error"];
14704
+ };
14705
+ };
14706
+ };
14707
+ };
14708
+ delete?: never;
14709
+ options?: never;
14710
+ head?: never;
14711
+ patch?: never;
14712
+ trace?: never;
14713
+ };
14714
+ "/v1/messaging/conversations/{id}/takeover": {
14715
+ parameters: {
14716
+ query?: never;
14717
+ header?: never;
14718
+ path?: never;
14719
+ cookie?: never;
14720
+ };
14721
+ get?: never;
14722
+ put?: never;
14723
+ /**
14724
+ * Take over conversation
14725
+ * @description Switch a messaging conversation into human-operator mode so inbound messages are persisted but agent replies are suppressed.
14726
+ */
14727
+ post: {
14728
+ parameters: {
14729
+ query?: never;
14730
+ header?: never;
14731
+ path: {
14732
+ id: string;
14733
+ };
14734
+ cookie?: never;
14735
+ };
14736
+ requestBody?: {
14737
+ content: {
14738
+ "application/json": {
14739
+ reason?: string;
14740
+ };
14741
+ };
14742
+ };
14743
+ responses: {
14744
+ /** @description Conversation switched to human mode */
14745
+ 200: {
14746
+ headers: {
14747
+ [name: string]: unknown;
14748
+ };
14749
+ content: {
14750
+ "application/json": {
14751
+ agentMode: string;
14752
+ id: string;
14753
+ takeoverActorId: string | null;
14754
+ takeoverActorType: string | null;
14755
+ takeoverAt: string | null;
14756
+ takeoverReason: string | null;
14757
+ updatedAt: string;
14758
+ } & {
14759
+ [key: string]: unknown;
14760
+ };
14761
+ };
14762
+ };
14763
+ /** @description Invalid request */
14764
+ 400: {
14765
+ headers: {
14766
+ [name: string]: unknown;
14767
+ };
14768
+ content: {
14769
+ "application/json": components["schemas"]["Error"];
14770
+ };
14771
+ };
14772
+ /** @description Unauthorized */
14773
+ 401: {
14774
+ headers: {
14775
+ [name: string]: unknown;
14776
+ };
14777
+ content: {
14778
+ "application/json": components["schemas"]["Error"];
14779
+ };
14780
+ };
14781
+ /** @description Insufficient permissions */
14782
+ 403: {
14783
+ headers: {
14784
+ [name: string]: unknown;
14785
+ };
14786
+ content: {
14787
+ "application/json": components["schemas"]["Error"];
14788
+ };
14789
+ };
14790
+ /** @description Conversation not found */
14791
+ 404: {
14792
+ headers: {
14793
+ [name: string]: unknown;
14794
+ };
14795
+ content: {
14796
+ "application/json": components["schemas"]["Error"];
14797
+ };
14798
+ };
14799
+ /** @description Conversation already in human mode */
14800
+ 409: {
14801
+ headers: {
14802
+ [name: string]: unknown;
14803
+ };
14804
+ content: {
14805
+ "application/json": components["schemas"]["Error"];
14806
+ };
14807
+ };
14808
+ /** @description Internal server error */
14809
+ 500: {
14810
+ headers: {
14811
+ [name: string]: unknown;
14812
+ };
14813
+ content: {
14814
+ "application/json": components["schemas"]["Error"];
14815
+ };
14816
+ };
14817
+ };
14818
+ };
14819
+ delete?: never;
14820
+ options?: never;
14821
+ head?: never;
14822
+ patch?: never;
14823
+ trace?: never;
14824
+ };
14349
14825
  "/v1/messaging/imap/{surfaceId}/poll-now": {
14350
14826
  parameters: {
14351
14827
  query?: never;
@@ -17651,7 +18127,9 @@ interface paths {
17651
18127
  */
17652
18128
  get: {
17653
18129
  parameters: {
17654
- query?: never;
18130
+ query?: {
18131
+ includeEditorContext?: string;
18132
+ };
17655
18133
  header?: never;
17656
18134
  path: {
17657
18135
  id: string;
@@ -17674,6 +18152,17 @@ interface paths {
17674
18152
  createdAt: string;
17675
18153
  dashboardUrl?: string;
17676
18154
  description: string | null;
18155
+ editorContext?: {
18156
+ agentConfigMap: {
18157
+ [key: string]: unknown;
18158
+ };
18159
+ flowStepsMap: {
18160
+ [key: string]: {
18161
+ name: string;
18162
+ type: string;
18163
+ }[];
18164
+ };
18165
+ };
17677
18166
  icon: string | null;
17678
18167
  id: string;
17679
18168
  name: string;
@@ -34342,6 +34831,18 @@ interface DispatchRequest {
34342
34831
  };
34343
34832
  secrets?: Record<string, string>;
34344
34833
  inputs?: Record<string, unknown>;
34834
+ /**
34835
+ * End-user identity for multi-tenant SaaS callers whose users are not Runtype account
34836
+ * holders. Exposed as `{{_endUser.id}}`, `{{_endUser.email}}`, etc. in template variables
34837
+ * — used most commonly by agent memory namespace templates like `{{_endUser.id}}` to
34838
+ * shard long-term memory per end-user. Extra fields (name, tier, custom claims) are
34839
+ * forwarded verbatim and exposed under `_endUser.*`.
34840
+ */
34841
+ endUser?: {
34842
+ id: string;
34843
+ email?: string;
34844
+ [key: string]: unknown;
34845
+ };
34345
34846
  options?: {
34346
34847
  streamResponse?: boolean;
34347
34848
  modelOverride?: string;
@@ -37862,6 +38363,18 @@ interface AgentExecuteRequest {
37862
38363
  messages: AgentMessage[];
37863
38364
  /** Variables to pass to the agent */
37864
38365
  variables?: Record<string, unknown>;
38366
+ /**
38367
+ * End-user identity for multi-tenant SaaS callers whose users are not Runtype account
38368
+ * holders. Exposed as `{{_endUser.id}}`, `{{_endUser.email}}`, etc. in template variables
38369
+ * — used most commonly by agent memory namespace templates like `{{_endUser.id}}` to
38370
+ * shard long-term memory per end-user. Extra fields (name, tier, custom claims) are
38371
+ * forwarded verbatim and exposed under `_endUser.*`.
38372
+ */
38373
+ endUser?: {
38374
+ id: string;
38375
+ email?: string;
38376
+ [key: string]: unknown;
38377
+ };
37865
38378
  /** Enable streaming response (default: true) */
37866
38379
  streamResponse?: boolean;
37867
38380
  /** Enable debug mode to include all fields in events */
package/dist/index.d.ts CHANGED
@@ -6804,6 +6804,95 @@ interface paths {
6804
6804
  patch?: never;
6805
6805
  trace?: never;
6806
6806
  };
6807
+ "/v1/docs/search": {
6808
+ parameters: {
6809
+ query?: never;
6810
+ header?: never;
6811
+ path?: never;
6812
+ cookie?: never;
6813
+ };
6814
+ get?: never;
6815
+ put?: never;
6816
+ /**
6817
+ * Search documentation
6818
+ * @description Semantic search over the published Runtype documentation corpus. Returns a synthesized answer with citations. Use this for prose/how-to questions; for deterministic schemas and build guidance use the /v1/documentation endpoints.
6819
+ */
6820
+ post: {
6821
+ parameters: {
6822
+ query?: never;
6823
+ header?: never;
6824
+ path?: never;
6825
+ cookie?: never;
6826
+ };
6827
+ requestBody?: {
6828
+ content: {
6829
+ "application/json": {
6830
+ /** @description Natural-language documentation question. */
6831
+ query: string;
6832
+ };
6833
+ };
6834
+ };
6835
+ responses: {
6836
+ /** @description Documentation search result (MCP content blocks) */
6837
+ 200: {
6838
+ headers: {
6839
+ [name: string]: unknown;
6840
+ };
6841
+ content: {
6842
+ "application/json": {
6843
+ content: ({
6844
+ text?: string;
6845
+ type: string;
6846
+ } & {
6847
+ [key: string]: unknown;
6848
+ })[];
6849
+ };
6850
+ };
6851
+ };
6852
+ /** @description Invalid parameters */
6853
+ 400: {
6854
+ headers: {
6855
+ [name: string]: unknown;
6856
+ };
6857
+ content: {
6858
+ "application/json": components["schemas"]["Error"];
6859
+ };
6860
+ };
6861
+ /** @description Unauthorized */
6862
+ 401: {
6863
+ headers: {
6864
+ [name: string]: unknown;
6865
+ };
6866
+ content: {
6867
+ "application/json": components["schemas"]["Error"];
6868
+ };
6869
+ };
6870
+ /** @description Documentation search is not enabled */
6871
+ 403: {
6872
+ headers: {
6873
+ [name: string]: unknown;
6874
+ };
6875
+ content: {
6876
+ "application/json": components["schemas"]["Error"];
6877
+ };
6878
+ };
6879
+ /** @description Upstream documentation search failed */
6880
+ 502: {
6881
+ headers: {
6882
+ [name: string]: unknown;
6883
+ };
6884
+ content: {
6885
+ "application/json": components["schemas"]["Error"];
6886
+ };
6887
+ };
6888
+ };
6889
+ };
6890
+ delete?: never;
6891
+ options?: never;
6892
+ head?: never;
6893
+ patch?: never;
6894
+ trace?: never;
6895
+ };
6807
6896
  "/v1/documentation": {
6808
6897
  parameters: {
6809
6898
  query?: never;
@@ -13647,6 +13736,10 @@ interface paths {
13647
13736
  surface_id?: string;
13648
13737
  /** @description Filter by status (open, closed, archived, all) */
13649
13738
  status?: string;
13739
+ /** @description Filter by agent mode (auto, human, all) */
13740
+ agentMode?: string;
13741
+ /** @description Filter by agent mode (deprecated, use agentMode) */
13742
+ agent_mode?: string;
13650
13743
  /** @description Search by subject, participant name, or email */
13651
13744
  search?: string;
13652
13745
  };
@@ -13664,6 +13757,7 @@ interface paths {
13664
13757
  content: {
13665
13758
  "application/json": {
13666
13759
  data: ({
13760
+ agentMode: string;
13667
13761
  createdAt: string;
13668
13762
  externalParticipantId: string | null;
13669
13763
  externalThreadId: string | null;
@@ -13675,6 +13769,10 @@ interface paths {
13675
13769
  status: string;
13676
13770
  subject: string | null;
13677
13771
  surfaceId: string;
13772
+ takeoverActorId: string | null;
13773
+ takeoverActorType: string | null;
13774
+ takeoverAt: string | null;
13775
+ takeoverReason: string | null;
13678
13776
  timezone: string | null;
13679
13777
  updatedAt: string;
13680
13778
  } & {
@@ -13768,6 +13866,7 @@ interface paths {
13768
13866
  };
13769
13867
  content: {
13770
13868
  "application/json": {
13869
+ agentMode: string;
13771
13870
  context?: {
13772
13871
  [key: string]: unknown;
13773
13872
  };
@@ -13790,6 +13889,10 @@ interface paths {
13790
13889
  type: string | null;
13791
13890
  };
13792
13891
  surfaceId: string;
13892
+ takeoverActorId: string | null;
13893
+ takeoverActorType: string | null;
13894
+ takeoverAt: string | null;
13895
+ takeoverReason: string | null;
13793
13896
  timezone: string | null;
13794
13897
  updatedAt: string;
13795
13898
  } & {
@@ -13870,6 +13973,7 @@ interface paths {
13870
13973
  };
13871
13974
  content: {
13872
13975
  "application/json": {
13976
+ agentMode: string;
13873
13977
  context?: {
13874
13978
  [key: string]: unknown;
13875
13979
  };
@@ -13892,6 +13996,10 @@ interface paths {
13892
13996
  type: string | null;
13893
13997
  };
13894
13998
  surfaceId: string;
13999
+ takeoverActorId: string | null;
14000
+ takeoverActorType: string | null;
14001
+ takeoverAt: string | null;
14002
+ takeoverReason: string | null;
13895
14003
  timezone: string | null;
13896
14004
  updatedAt: string;
13897
14005
  } & {
@@ -13981,6 +14089,7 @@ interface paths {
13981
14089
  };
13982
14090
  content: {
13983
14091
  "application/json": {
14092
+ agentMode: string;
13984
14093
  context?: {
13985
14094
  [key: string]: unknown;
13986
14095
  };
@@ -14003,6 +14112,10 @@ interface paths {
14003
14112
  type: string | null;
14004
14113
  };
14005
14114
  surfaceId: string;
14115
+ takeoverActorId: string | null;
14116
+ takeoverActorType: string | null;
14117
+ takeoverAt: string | null;
14118
+ takeoverReason: string | null;
14006
14119
  timezone: string | null;
14007
14120
  updatedAt: string;
14008
14121
  } & {
@@ -14346,6 +14459,369 @@ interface paths {
14346
14459
  patch?: never;
14347
14460
  trace?: never;
14348
14461
  };
14462
+ "/v1/messaging/conversations/{id}/resume": {
14463
+ parameters: {
14464
+ query?: never;
14465
+ header?: never;
14466
+ path?: never;
14467
+ cookie?: never;
14468
+ };
14469
+ get?: never;
14470
+ put?: never;
14471
+ /**
14472
+ * Resume agent handling
14473
+ * @description Switch a messaging conversation from human-operator mode back to automatic agent handling.
14474
+ */
14475
+ post: {
14476
+ parameters: {
14477
+ query?: never;
14478
+ header?: never;
14479
+ path: {
14480
+ id: string;
14481
+ };
14482
+ cookie?: never;
14483
+ };
14484
+ requestBody?: never;
14485
+ responses: {
14486
+ /** @description Conversation resumed to auto mode */
14487
+ 200: {
14488
+ headers: {
14489
+ [name: string]: unknown;
14490
+ };
14491
+ content: {
14492
+ "application/json": {
14493
+ agentMode: string;
14494
+ id: string;
14495
+ takeoverActorId: string | null;
14496
+ takeoverActorType: string | null;
14497
+ takeoverAt: string | null;
14498
+ takeoverReason: string | null;
14499
+ updatedAt: string;
14500
+ } & {
14501
+ [key: string]: unknown;
14502
+ };
14503
+ };
14504
+ };
14505
+ /** @description Invalid request */
14506
+ 400: {
14507
+ headers: {
14508
+ [name: string]: unknown;
14509
+ };
14510
+ content: {
14511
+ "application/json": components["schemas"]["Error"];
14512
+ };
14513
+ };
14514
+ /** @description Unauthorized */
14515
+ 401: {
14516
+ headers: {
14517
+ [name: string]: unknown;
14518
+ };
14519
+ content: {
14520
+ "application/json": components["schemas"]["Error"];
14521
+ };
14522
+ };
14523
+ /** @description Insufficient permissions */
14524
+ 403: {
14525
+ headers: {
14526
+ [name: string]: unknown;
14527
+ };
14528
+ content: {
14529
+ "application/json": components["schemas"]["Error"];
14530
+ };
14531
+ };
14532
+ /** @description Conversation not found */
14533
+ 404: {
14534
+ headers: {
14535
+ [name: string]: unknown;
14536
+ };
14537
+ content: {
14538
+ "application/json": components["schemas"]["Error"];
14539
+ };
14540
+ };
14541
+ /** @description Conversation already in auto mode */
14542
+ 409: {
14543
+ headers: {
14544
+ [name: string]: unknown;
14545
+ };
14546
+ content: {
14547
+ "application/json": components["schemas"]["Error"];
14548
+ };
14549
+ };
14550
+ /** @description Internal server error */
14551
+ 500: {
14552
+ headers: {
14553
+ [name: string]: unknown;
14554
+ };
14555
+ content: {
14556
+ "application/json": components["schemas"]["Error"];
14557
+ };
14558
+ };
14559
+ };
14560
+ };
14561
+ delete?: never;
14562
+ options?: never;
14563
+ head?: never;
14564
+ patch?: never;
14565
+ trace?: never;
14566
+ };
14567
+ "/v1/messaging/conversations/{id}/send": {
14568
+ parameters: {
14569
+ query?: never;
14570
+ header?: never;
14571
+ path?: never;
14572
+ cookie?: never;
14573
+ };
14574
+ get?: never;
14575
+ put?: never;
14576
+ /**
14577
+ * Send human-authored message
14578
+ * @description Send a human-authored outbound message through the conversation's messaging channel.
14579
+ */
14580
+ post: {
14581
+ parameters: {
14582
+ query?: never;
14583
+ header?: never;
14584
+ path: {
14585
+ id: string;
14586
+ };
14587
+ cookie?: never;
14588
+ };
14589
+ requestBody?: {
14590
+ content: {
14591
+ "application/json": {
14592
+ content: string;
14593
+ metadata?: {
14594
+ attachments?: {
14595
+ contentType: string;
14596
+ name: string;
14597
+ size: number;
14598
+ url?: string;
14599
+ }[];
14600
+ externalTimestamp?: string;
14601
+ headers?: {
14602
+ [key: string]: string;
14603
+ };
14604
+ };
14605
+ /** @default true */
14606
+ requireHumanMode?: boolean;
14607
+ };
14608
+ };
14609
+ };
14610
+ responses: {
14611
+ /** @description Message sent to channel */
14612
+ 201: {
14613
+ headers: {
14614
+ [name: string]: unknown;
14615
+ };
14616
+ content: {
14617
+ "application/json": {
14618
+ deliveryResult: {
14619
+ deliveryStatus: string;
14620
+ externalMessageId: string | null;
14621
+ } & {
14622
+ [key: string]: unknown;
14623
+ };
14624
+ message: {
14625
+ content: string;
14626
+ conversationId: string;
14627
+ createdAt: string;
14628
+ direction: string | null;
14629
+ externalMessageId: string | null;
14630
+ id?: string;
14631
+ metadata: {
14632
+ [key: string]: unknown;
14633
+ };
14634
+ role: string;
14635
+ } & {
14636
+ [key: string]: unknown;
14637
+ };
14638
+ } & {
14639
+ [key: string]: unknown;
14640
+ };
14641
+ };
14642
+ };
14643
+ /** @description Invalid request */
14644
+ 400: {
14645
+ headers: {
14646
+ [name: string]: unknown;
14647
+ };
14648
+ content: {
14649
+ "application/json": components["schemas"]["Error"];
14650
+ };
14651
+ };
14652
+ /** @description Unauthorized */
14653
+ 401: {
14654
+ headers: {
14655
+ [name: string]: unknown;
14656
+ };
14657
+ content: {
14658
+ "application/json": components["schemas"]["Error"];
14659
+ };
14660
+ };
14661
+ /** @description Insufficient permissions */
14662
+ 403: {
14663
+ headers: {
14664
+ [name: string]: unknown;
14665
+ };
14666
+ content: {
14667
+ "application/json": components["schemas"]["Error"];
14668
+ };
14669
+ };
14670
+ /** @description Conversation not found */
14671
+ 404: {
14672
+ headers: {
14673
+ [name: string]: unknown;
14674
+ };
14675
+ content: {
14676
+ "application/json": components["schemas"]["Error"];
14677
+ };
14678
+ };
14679
+ /** @description Conversation or surface cannot be addressed */
14680
+ 422: {
14681
+ headers: {
14682
+ [name: string]: unknown;
14683
+ };
14684
+ content: {
14685
+ "application/json": components["schemas"]["Error"];
14686
+ };
14687
+ };
14688
+ /** @description Internal server error */
14689
+ 500: {
14690
+ headers: {
14691
+ [name: string]: unknown;
14692
+ };
14693
+ content: {
14694
+ "application/json": components["schemas"]["Error"];
14695
+ };
14696
+ };
14697
+ /** @description Channel delivery failed */
14698
+ 502: {
14699
+ headers: {
14700
+ [name: string]: unknown;
14701
+ };
14702
+ content: {
14703
+ "application/json": components["schemas"]["Error"];
14704
+ };
14705
+ };
14706
+ };
14707
+ };
14708
+ delete?: never;
14709
+ options?: never;
14710
+ head?: never;
14711
+ patch?: never;
14712
+ trace?: never;
14713
+ };
14714
+ "/v1/messaging/conversations/{id}/takeover": {
14715
+ parameters: {
14716
+ query?: never;
14717
+ header?: never;
14718
+ path?: never;
14719
+ cookie?: never;
14720
+ };
14721
+ get?: never;
14722
+ put?: never;
14723
+ /**
14724
+ * Take over conversation
14725
+ * @description Switch a messaging conversation into human-operator mode so inbound messages are persisted but agent replies are suppressed.
14726
+ */
14727
+ post: {
14728
+ parameters: {
14729
+ query?: never;
14730
+ header?: never;
14731
+ path: {
14732
+ id: string;
14733
+ };
14734
+ cookie?: never;
14735
+ };
14736
+ requestBody?: {
14737
+ content: {
14738
+ "application/json": {
14739
+ reason?: string;
14740
+ };
14741
+ };
14742
+ };
14743
+ responses: {
14744
+ /** @description Conversation switched to human mode */
14745
+ 200: {
14746
+ headers: {
14747
+ [name: string]: unknown;
14748
+ };
14749
+ content: {
14750
+ "application/json": {
14751
+ agentMode: string;
14752
+ id: string;
14753
+ takeoverActorId: string | null;
14754
+ takeoverActorType: string | null;
14755
+ takeoverAt: string | null;
14756
+ takeoverReason: string | null;
14757
+ updatedAt: string;
14758
+ } & {
14759
+ [key: string]: unknown;
14760
+ };
14761
+ };
14762
+ };
14763
+ /** @description Invalid request */
14764
+ 400: {
14765
+ headers: {
14766
+ [name: string]: unknown;
14767
+ };
14768
+ content: {
14769
+ "application/json": components["schemas"]["Error"];
14770
+ };
14771
+ };
14772
+ /** @description Unauthorized */
14773
+ 401: {
14774
+ headers: {
14775
+ [name: string]: unknown;
14776
+ };
14777
+ content: {
14778
+ "application/json": components["schemas"]["Error"];
14779
+ };
14780
+ };
14781
+ /** @description Insufficient permissions */
14782
+ 403: {
14783
+ headers: {
14784
+ [name: string]: unknown;
14785
+ };
14786
+ content: {
14787
+ "application/json": components["schemas"]["Error"];
14788
+ };
14789
+ };
14790
+ /** @description Conversation not found */
14791
+ 404: {
14792
+ headers: {
14793
+ [name: string]: unknown;
14794
+ };
14795
+ content: {
14796
+ "application/json": components["schemas"]["Error"];
14797
+ };
14798
+ };
14799
+ /** @description Conversation already in human mode */
14800
+ 409: {
14801
+ headers: {
14802
+ [name: string]: unknown;
14803
+ };
14804
+ content: {
14805
+ "application/json": components["schemas"]["Error"];
14806
+ };
14807
+ };
14808
+ /** @description Internal server error */
14809
+ 500: {
14810
+ headers: {
14811
+ [name: string]: unknown;
14812
+ };
14813
+ content: {
14814
+ "application/json": components["schemas"]["Error"];
14815
+ };
14816
+ };
14817
+ };
14818
+ };
14819
+ delete?: never;
14820
+ options?: never;
14821
+ head?: never;
14822
+ patch?: never;
14823
+ trace?: never;
14824
+ };
14349
14825
  "/v1/messaging/imap/{surfaceId}/poll-now": {
14350
14826
  parameters: {
14351
14827
  query?: never;
@@ -17651,7 +18127,9 @@ interface paths {
17651
18127
  */
17652
18128
  get: {
17653
18129
  parameters: {
17654
- query?: never;
18130
+ query?: {
18131
+ includeEditorContext?: string;
18132
+ };
17655
18133
  header?: never;
17656
18134
  path: {
17657
18135
  id: string;
@@ -17674,6 +18152,17 @@ interface paths {
17674
18152
  createdAt: string;
17675
18153
  dashboardUrl?: string;
17676
18154
  description: string | null;
18155
+ editorContext?: {
18156
+ agentConfigMap: {
18157
+ [key: string]: unknown;
18158
+ };
18159
+ flowStepsMap: {
18160
+ [key: string]: {
18161
+ name: string;
18162
+ type: string;
18163
+ }[];
18164
+ };
18165
+ };
17677
18166
  icon: string | null;
17678
18167
  id: string;
17679
18168
  name: string;
@@ -34342,6 +34831,18 @@ interface DispatchRequest {
34342
34831
  };
34343
34832
  secrets?: Record<string, string>;
34344
34833
  inputs?: Record<string, unknown>;
34834
+ /**
34835
+ * End-user identity for multi-tenant SaaS callers whose users are not Runtype account
34836
+ * holders. Exposed as `{{_endUser.id}}`, `{{_endUser.email}}`, etc. in template variables
34837
+ * — used most commonly by agent memory namespace templates like `{{_endUser.id}}` to
34838
+ * shard long-term memory per end-user. Extra fields (name, tier, custom claims) are
34839
+ * forwarded verbatim and exposed under `_endUser.*`.
34840
+ */
34841
+ endUser?: {
34842
+ id: string;
34843
+ email?: string;
34844
+ [key: string]: unknown;
34845
+ };
34345
34846
  options?: {
34346
34847
  streamResponse?: boolean;
34347
34848
  modelOverride?: string;
@@ -37862,6 +38363,18 @@ interface AgentExecuteRequest {
37862
38363
  messages: AgentMessage[];
37863
38364
  /** Variables to pass to the agent */
37864
38365
  variables?: Record<string, unknown>;
38366
+ /**
38367
+ * End-user identity for multi-tenant SaaS callers whose users are not Runtype account
38368
+ * holders. Exposed as `{{_endUser.id}}`, `{{_endUser.email}}`, etc. in template variables
38369
+ * — used most commonly by agent memory namespace templates like `{{_endUser.id}}` to
38370
+ * shard long-term memory per end-user. Extra fields (name, tier, custom claims) are
38371
+ * forwarded verbatim and exposed under `_endUser.*`.
38372
+ */
38373
+ endUser?: {
38374
+ id: string;
38375
+ email?: string;
38376
+ [key: string]: unknown;
38377
+ };
37865
38378
  /** Enable streaming response (default: true) */
37866
38379
  streamResponse?: boolean;
37867
38380
  /** Enable debug mode to include all fields in events */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@runtypelabs/sdk",
3
- "version": "4.5.0",
3
+ "version": "4.6.1",
4
4
  "type": "module",
5
5
  "description": "TypeScript SDK for the Runtype API with fluent methods. Use it to quickly realize AI products, agents, and workflows.",
6
6
  "main": "dist/index.cjs",