@webitel/ui-sdk 26.8.118 → 26.8.120
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/{clients-DWcx-Mfk.js → clients-CwGTZ_pb.js} +1502 -170
- package/dist/{components-CeOlovz8.js → components-Bl2fDyms.js} +933 -948
- package/dist/ui-sdk.css +1 -1
- package/dist/ui-sdk.js +1 -1
- package/dist/ui-sdk.umd.cjs +2158 -2119
- package/dist/{wt-chat-emoji-v9gpIuHe.js → wt-chat-emoji-CQ-ZUYcm.js} +1 -1
- package/dist/{wt-display-chip-items-Bob7miL_.js → wt-display-chip-items-yuaxgXrU.js} +1 -1
- package/dist/wt-label-CiLpqe61.js +34 -0
- package/dist/wt-rich-text-editor-DyGnGabB.js +130 -0
- package/dist/{wt-send-message-popup-9O69XY0L.js → wt-send-message-popup-Ig3Uq6So.js} +2 -2
- package/dist/{wt-type-extension-value-input-55YmFcBp.js → wt-type-extension-value-input-B4fjVEic.js} +2 -2
- package/dist/{wt-vidstack-player-ETPSioGH.js → wt-vidstack-player-DitE8XQx.js} +1 -1
- package/package.json +3 -1
- package/src/components/index.js +14 -0
- package/src/components/on-demand/wt-rich-text-editor/__tests__/WtRichTextEditor.compat.spec.js +127 -0
- package/src/components/on-demand/wt-rich-text-editor/__tests__/WtRichTextEditor.spec.js +157 -0
- package/src/components/on-demand/wt-rich-text-editor/__tests__/loadTinyMce.spec.js +54 -0
- package/src/components/on-demand/wt-rich-text-editor/_internals/loadTinyMce.ts +31 -0
- package/src/components/on-demand/wt-rich-text-editor/_internals/wt-rich-text-editor-skeleton.vue +54 -0
- package/src/components/on-demand/wt-rich-text-editor/wt-rich-text-editor.vue +223 -0
- package/types/.tsbuildinfo +1 -1
- package/types/components/index.d.ts +7 -0
- package/types/components/on-demand/wt-call-media-action/wt-call-media-action.vue.d.ts +2 -2
- package/types/components/on-demand/wt-rich-text-editor/__tests__/WtRichTextEditor.compat.spec.d.ts +1 -0
- package/types/components/on-demand/wt-rich-text-editor/__tests__/WtRichTextEditor.spec.d.ts +1 -0
- package/types/components/on-demand/wt-rich-text-editor/__tests__/loadTinyMce.spec.d.ts +1 -0
- package/types/components/on-demand/wt-rich-text-editor/_internals/loadTinyMce.d.ts +1 -0
- package/types/components/on-demand/wt-rich-text-editor/_internals/wt-rich-text-editor-skeleton.vue.d.ts +3 -0
- package/types/components/on-demand/wt-rich-text-editor/wt-rich-text-editor.vue.d.ts +65 -0
- package/types/components/transitions/cases/wt-replace-transition.vue.d.ts +1 -1
- package/types/components/wt-datepicker/wt-datepicker.vue.d.ts +2 -2
- package/types/components/wt-input-text/wt-input-text.vue.d.ts +1 -1
- package/types/components/wt-player/wt-player.vue.d.ts +1 -1
- package/types/components/wt-search-bar/wt-search-bar.vue.d.ts +2 -2
- package/types/components/wt-table/wt-table.vue.d.ts +1 -1
- package/types/components/wt-textarea/wt-textarea.vue.d.ts +1 -1
- package/types/components/wt-time-input/wt-time-input.vue.d.ts +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { c as e, r as t } from "./dist-EXdgfpvN.js";
|
|
2
2
|
import { a as n, i as r, n as i, t as a } from "./genClient-CvWlQ0TZ.js";
|
|
3
3
|
import { i as o, r as s } from "./caseConverters-DGri4uJo.js";
|
|
4
|
-
import { T as c } from "./components-
|
|
4
|
+
import { T as c } from "./components-Bl2fDyms.js";
|
|
5
5
|
import { a as l, c as u, r as d, u as f } from "./convertDuration-CW5qzlwH.js";
|
|
6
6
|
import { S as p, b as m } from "./enums-CsINFPBu.js";
|
|
7
7
|
import { t as h } from "./deep-copy-BJdHBMNZ.js";
|
|
@@ -2637,6 +2637,22 @@ v.object({
|
|
|
2637
2637
|
"FAILED"
|
|
2638
2638
|
]).default("INDEX_STATE_UNSPECIFIED").describe("Indexing state."),
|
|
2639
2639
|
parent_id: v.string().optional().describe("Parent article id; 0 for a top-level article."),
|
|
2640
|
+
published: v.object({
|
|
2641
|
+
article_id: v.string().optional().describe("Owning article id."),
|
|
2642
|
+
body_markdown: v.string().optional().describe("Markdown serialization (chunking input)."),
|
|
2643
|
+
body_plain: v.string().optional().describe("Plaintext serialization (full-text source)."),
|
|
2644
|
+
body_rich_text: v.looseObject({}).optional().describe("Editor document for this version."),
|
|
2645
|
+
created_at: v.string().optional().describe("CreatedAt timestamp (epoch ms)."),
|
|
2646
|
+
created_by: v.object({
|
|
2647
|
+
id: v.string().optional(),
|
|
2648
|
+
name: v.string().optional()
|
|
2649
|
+
}).optional().describe("User who authored the version."),
|
|
2650
|
+
id: v.string().optional().describe("Unique identifier of the version."),
|
|
2651
|
+
notes: v.string().optional().describe("Optional author notes."),
|
|
2652
|
+
restored_from: v.string().optional().describe("Version this one was restored from; 0 if authored directly."),
|
|
2653
|
+
subject: v.string().optional().describe("Versioned subject."),
|
|
2654
|
+
version_number: v.int().optional().describe("Monotonic version number within the article.")
|
|
2655
|
+
}).optional().describe("Published version, only when requested in fields."),
|
|
2640
2656
|
published_version_id: v.string().optional().describe("Published version id; 0 if not yet published."),
|
|
2641
2657
|
space: v.object({
|
|
2642
2658
|
id: v.string().optional(),
|
|
@@ -2698,6 +2714,22 @@ v.object({
|
|
|
2698
2714
|
"FAILED"
|
|
2699
2715
|
]).default("INDEX_STATE_UNSPECIFIED").describe("Indexing state."),
|
|
2700
2716
|
parent_id: v.string().optional().describe("Parent article id; 0 for a top-level article."),
|
|
2717
|
+
published: v.object({
|
|
2718
|
+
article_id: v.string().optional().describe("Owning article id."),
|
|
2719
|
+
body_markdown: v.string().optional().describe("Markdown serialization (chunking input)."),
|
|
2720
|
+
body_plain: v.string().optional().describe("Plaintext serialization (full-text source)."),
|
|
2721
|
+
body_rich_text: v.looseObject({}).optional().describe("Editor document for this version."),
|
|
2722
|
+
created_at: v.string().optional().describe("CreatedAt timestamp (epoch ms)."),
|
|
2723
|
+
created_by: v.object({
|
|
2724
|
+
id: v.string().optional(),
|
|
2725
|
+
name: v.string().optional()
|
|
2726
|
+
}).optional().describe("User who authored the version."),
|
|
2727
|
+
id: v.string().optional().describe("Unique identifier of the version."),
|
|
2728
|
+
notes: v.string().optional().describe("Optional author notes."),
|
|
2729
|
+
restored_from: v.string().optional().describe("Version this one was restored from; 0 if authored directly."),
|
|
2730
|
+
subject: v.string().optional().describe("Versioned subject."),
|
|
2731
|
+
version_number: v.int().optional().describe("Monotonic version number within the article.")
|
|
2732
|
+
}).optional().describe("Published version, only when requested in fields."),
|
|
2701
2733
|
published_version_id: v.string().optional().describe("Published version id; 0 if not yet published."),
|
|
2702
2734
|
space: v.object({
|
|
2703
2735
|
id: v.string().optional(),
|
|
@@ -2740,6 +2772,22 @@ v.object({
|
|
|
2740
2772
|
"FAILED"
|
|
2741
2773
|
]).default("INDEX_STATE_UNSPECIFIED").describe("Indexing state."),
|
|
2742
2774
|
parent_id: v.string().optional().describe("Parent article id; 0 for a top-level article."),
|
|
2775
|
+
published: v.object({
|
|
2776
|
+
article_id: v.string().optional().describe("Owning article id."),
|
|
2777
|
+
body_markdown: v.string().optional().describe("Markdown serialization (chunking input)."),
|
|
2778
|
+
body_plain: v.string().optional().describe("Plaintext serialization (full-text source)."),
|
|
2779
|
+
body_rich_text: v.looseObject({}).optional().describe("Editor document for this version."),
|
|
2780
|
+
created_at: v.string().optional().describe("CreatedAt timestamp (epoch ms)."),
|
|
2781
|
+
created_by: v.object({
|
|
2782
|
+
id: v.string().optional(),
|
|
2783
|
+
name: v.string().optional()
|
|
2784
|
+
}).optional().describe("User who authored the version."),
|
|
2785
|
+
id: v.string().optional().describe("Unique identifier of the version."),
|
|
2786
|
+
notes: v.string().optional().describe("Optional author notes."),
|
|
2787
|
+
restored_from: v.string().optional().describe("Version this one was restored from; 0 if authored directly."),
|
|
2788
|
+
subject: v.string().optional().describe("Versioned subject."),
|
|
2789
|
+
version_number: v.int().optional().describe("Monotonic version number within the article.")
|
|
2790
|
+
}).optional().describe("Published version, only when requested in fields."),
|
|
2743
2791
|
published_version_id: v.string().optional().describe("Published version id; 0 if not yet published."),
|
|
2744
2792
|
space: v.object({
|
|
2745
2793
|
id: v.string().optional(),
|
|
@@ -2763,7 +2811,7 @@ v.object({
|
|
|
2763
2811
|
name: v.string().optional()
|
|
2764
2812
|
}).optional().describe("User who last updated the article."),
|
|
2765
2813
|
ver: v.int().optional().describe("Optimistic-lock counter.")
|
|
2766
|
-
}).describe("Article is the article read model."), v.object({ etag: v.string().describe("Concurrency token / locator.") }), v.object({
|
|
2814
|
+
}).describe("Article is the article read model."), v.object({ etag: v.string().describe("Concurrency token / locator.") }), v.object({ fields: v.array(v.string()).optional().describe("Set of fields to return.") }), v.object({
|
|
2767
2815
|
tags: v.array(v.string()).optional().describe("Article tags."),
|
|
2768
2816
|
created_at: v.string().optional().describe("CreatedAt timestamp (epoch ms)."),
|
|
2769
2817
|
created_by: v.object({
|
|
@@ -2782,6 +2830,22 @@ v.object({
|
|
|
2782
2830
|
"FAILED"
|
|
2783
2831
|
]).default("INDEX_STATE_UNSPECIFIED").describe("Indexing state."),
|
|
2784
2832
|
parent_id: v.string().optional().describe("Parent article id; 0 for a top-level article."),
|
|
2833
|
+
published: v.object({
|
|
2834
|
+
article_id: v.string().optional().describe("Owning article id."),
|
|
2835
|
+
body_markdown: v.string().optional().describe("Markdown serialization (chunking input)."),
|
|
2836
|
+
body_plain: v.string().optional().describe("Plaintext serialization (full-text source)."),
|
|
2837
|
+
body_rich_text: v.looseObject({}).optional().describe("Editor document for this version."),
|
|
2838
|
+
created_at: v.string().optional().describe("CreatedAt timestamp (epoch ms)."),
|
|
2839
|
+
created_by: v.object({
|
|
2840
|
+
id: v.string().optional(),
|
|
2841
|
+
name: v.string().optional()
|
|
2842
|
+
}).optional().describe("User who authored the version."),
|
|
2843
|
+
id: v.string().optional().describe("Unique identifier of the version."),
|
|
2844
|
+
notes: v.string().optional().describe("Optional author notes."),
|
|
2845
|
+
restored_from: v.string().optional().describe("Version this one was restored from; 0 if authored directly."),
|
|
2846
|
+
subject: v.string().optional().describe("Versioned subject."),
|
|
2847
|
+
version_number: v.int().optional().describe("Monotonic version number within the article.")
|
|
2848
|
+
}).optional().describe("Published version, only when requested in fields."),
|
|
2785
2849
|
published_version_id: v.string().optional().describe("Published version id; 0 if not yet published."),
|
|
2786
2850
|
space: v.object({
|
|
2787
2851
|
id: v.string().optional(),
|
|
@@ -2805,7 +2869,7 @@ v.object({
|
|
|
2805
2869
|
name: v.string().optional()
|
|
2806
2870
|
}).optional().describe("User who last updated the article."),
|
|
2807
2871
|
ver: v.int().optional().describe("Optimistic-lock counter.")
|
|
2808
|
-
}).describe("Article is the article read model."), v.object({ etag: v.string().describe("Concurrency token of the article to update.") }), v.object({
|
|
2872
|
+
}).describe("Article is the article read model."), v.object({ etag: v.string().describe("Concurrency token of the article to update.") }), v.object({ x_json_mask: v.array(v.string()).optional().describe("Input fields to apply, filled by the gateway from a PATCH body.") }), v.object({
|
|
2809
2873
|
tags: v.array(v.string()).optional().describe("Article tags."),
|
|
2810
2874
|
body_rich_text: v.looseObject({}).optional().describe("Editor document; serialized server-side to markdown/plaintext/tsvector."),
|
|
2811
2875
|
parent_id: v.string().optional().describe("Parent article id; 0 for a top-level article."),
|
|
@@ -2841,6 +2905,22 @@ v.object({
|
|
|
2841
2905
|
"FAILED"
|
|
2842
2906
|
]).default("INDEX_STATE_UNSPECIFIED").describe("Indexing state."),
|
|
2843
2907
|
parent_id: v.string().optional().describe("Parent article id; 0 for a top-level article."),
|
|
2908
|
+
published: v.object({
|
|
2909
|
+
article_id: v.string().optional().describe("Owning article id."),
|
|
2910
|
+
body_markdown: v.string().optional().describe("Markdown serialization (chunking input)."),
|
|
2911
|
+
body_plain: v.string().optional().describe("Plaintext serialization (full-text source)."),
|
|
2912
|
+
body_rich_text: v.looseObject({}).optional().describe("Editor document for this version."),
|
|
2913
|
+
created_at: v.string().optional().describe("CreatedAt timestamp (epoch ms)."),
|
|
2914
|
+
created_by: v.object({
|
|
2915
|
+
id: v.string().optional(),
|
|
2916
|
+
name: v.string().optional()
|
|
2917
|
+
}).optional().describe("User who authored the version."),
|
|
2918
|
+
id: v.string().optional().describe("Unique identifier of the version."),
|
|
2919
|
+
notes: v.string().optional().describe("Optional author notes."),
|
|
2920
|
+
restored_from: v.string().optional().describe("Version this one was restored from; 0 if authored directly."),
|
|
2921
|
+
subject: v.string().optional().describe("Versioned subject."),
|
|
2922
|
+
version_number: v.int().optional().describe("Monotonic version number within the article.")
|
|
2923
|
+
}).optional().describe("Published version, only when requested in fields."),
|
|
2844
2924
|
published_version_id: v.string().optional().describe("Published version id; 0 if not yet published."),
|
|
2845
2925
|
space: v.object({
|
|
2846
2926
|
id: v.string().optional(),
|
|
@@ -2864,7 +2944,7 @@ v.object({
|
|
|
2864
2944
|
name: v.string().optional()
|
|
2865
2945
|
}).optional().describe("User who last updated the article."),
|
|
2866
2946
|
ver: v.int().optional().describe("Optimistic-lock counter.")
|
|
2867
|
-
}).describe("Article is the article read model."), v.object({ etag: v.string().describe("Concurrency token of the article to update.") }), v.object({
|
|
2947
|
+
}).describe("Article is the article read model."), v.object({ etag: v.string().describe("Concurrency token of the article to update.") }), v.object({ x_json_mask: v.array(v.string()).optional().describe("Input fields to apply, filled by the gateway from a PATCH body.") }), v.object({
|
|
2868
2948
|
tags: v.array(v.string()).optional().describe("Article tags."),
|
|
2869
2949
|
body_rich_text: v.looseObject({}).optional().describe("Editor document; serialized server-side to markdown/plaintext/tsvector."),
|
|
2870
2950
|
parent_id: v.string().optional().describe("Parent article id; 0 for a top-level article."),
|
|
@@ -2900,6 +2980,22 @@ v.object({
|
|
|
2900
2980
|
"FAILED"
|
|
2901
2981
|
]).default("INDEX_STATE_UNSPECIFIED").describe("Indexing state."),
|
|
2902
2982
|
parent_id: v.string().optional().describe("Parent article id; 0 for a top-level article."),
|
|
2983
|
+
published: v.object({
|
|
2984
|
+
article_id: v.string().optional().describe("Owning article id."),
|
|
2985
|
+
body_markdown: v.string().optional().describe("Markdown serialization (chunking input)."),
|
|
2986
|
+
body_plain: v.string().optional().describe("Plaintext serialization (full-text source)."),
|
|
2987
|
+
body_rich_text: v.looseObject({}).optional().describe("Editor document for this version."),
|
|
2988
|
+
created_at: v.string().optional().describe("CreatedAt timestamp (epoch ms)."),
|
|
2989
|
+
created_by: v.object({
|
|
2990
|
+
id: v.string().optional(),
|
|
2991
|
+
name: v.string().optional()
|
|
2992
|
+
}).optional().describe("User who authored the version."),
|
|
2993
|
+
id: v.string().optional().describe("Unique identifier of the version."),
|
|
2994
|
+
notes: v.string().optional().describe("Optional author notes."),
|
|
2995
|
+
restored_from: v.string().optional().describe("Version this one was restored from; 0 if authored directly."),
|
|
2996
|
+
subject: v.string().optional().describe("Versioned subject."),
|
|
2997
|
+
version_number: v.int().optional().describe("Monotonic version number within the article.")
|
|
2998
|
+
}).optional().describe("Published version, only when requested in fields."),
|
|
2903
2999
|
published_version_id: v.string().optional().describe("Published version id; 0 if not yet published."),
|
|
2904
3000
|
space: v.object({
|
|
2905
3001
|
id: v.string().optional(),
|
|
@@ -2942,6 +3038,80 @@ v.object({
|
|
|
2942
3038
|
"FAILED"
|
|
2943
3039
|
]).default("INDEX_STATE_UNSPECIFIED").describe("Indexing state."),
|
|
2944
3040
|
parent_id: v.string().optional().describe("Parent article id; 0 for a top-level article."),
|
|
3041
|
+
published: v.object({
|
|
3042
|
+
article_id: v.string().optional().describe("Owning article id."),
|
|
3043
|
+
body_markdown: v.string().optional().describe("Markdown serialization (chunking input)."),
|
|
3044
|
+
body_plain: v.string().optional().describe("Plaintext serialization (full-text source)."),
|
|
3045
|
+
body_rich_text: v.looseObject({}).optional().describe("Editor document for this version."),
|
|
3046
|
+
created_at: v.string().optional().describe("CreatedAt timestamp (epoch ms)."),
|
|
3047
|
+
created_by: v.object({
|
|
3048
|
+
id: v.string().optional(),
|
|
3049
|
+
name: v.string().optional()
|
|
3050
|
+
}).optional().describe("User who authored the version."),
|
|
3051
|
+
id: v.string().optional().describe("Unique identifier of the version."),
|
|
3052
|
+
notes: v.string().optional().describe("Optional author notes."),
|
|
3053
|
+
restored_from: v.string().optional().describe("Version this one was restored from; 0 if authored directly."),
|
|
3054
|
+
subject: v.string().optional().describe("Versioned subject."),
|
|
3055
|
+
version_number: v.int().optional().describe("Monotonic version number within the article.")
|
|
3056
|
+
}).optional().describe("Published version, only when requested in fields."),
|
|
3057
|
+
published_version_id: v.string().optional().describe("Published version id; 0 if not yet published."),
|
|
3058
|
+
space: v.object({
|
|
3059
|
+
id: v.string().optional(),
|
|
3060
|
+
name: v.string().optional()
|
|
3061
|
+
}).optional().describe("Space the article belongs to."),
|
|
3062
|
+
state: v.enum([
|
|
3063
|
+
"ARTICLE_STATE_UNSPECIFIED",
|
|
3064
|
+
"DRAFT",
|
|
3065
|
+
"ACTIVE",
|
|
3066
|
+
"INACTIVE"
|
|
3067
|
+
]).default("ARTICLE_STATE_UNSPECIFIED").describe("Lifecycle state."),
|
|
3068
|
+
subject: v.string().optional().describe("Current subject (mirrors the published version)."),
|
|
3069
|
+
type: v.enum([
|
|
3070
|
+
"ARTICLE_TYPE_UNSPECIFIED",
|
|
3071
|
+
"ARTICLE",
|
|
3072
|
+
"FAQ"
|
|
3073
|
+
]).default("ARTICLE_TYPE_UNSPECIFIED").describe("Article type."),
|
|
3074
|
+
updated_at: v.string().optional().describe("UpdatedAt timestamp (epoch ms)."),
|
|
3075
|
+
updated_by: v.object({
|
|
3076
|
+
id: v.string().optional(),
|
|
3077
|
+
name: v.string().optional()
|
|
3078
|
+
}).optional().describe("User who last updated the article."),
|
|
3079
|
+
ver: v.int().optional().describe("Optimistic-lock counter.")
|
|
3080
|
+
}).describe("Article is the article read model."), v.object({ etag: v.string().describe("Concurrency token / locator of the article.") }), v.object({
|
|
3081
|
+
tags: v.array(v.string()).optional().describe("Article tags."),
|
|
3082
|
+
created_at: v.string().optional().describe("CreatedAt timestamp (epoch ms)."),
|
|
3083
|
+
created_by: v.object({
|
|
3084
|
+
id: v.string().optional(),
|
|
3085
|
+
name: v.string().optional()
|
|
3086
|
+
}).optional().describe("User who created the article."),
|
|
3087
|
+
depth: v.int().optional().describe("Hierarchy depth (1..5)."),
|
|
3088
|
+
domain_id: v.string().optional().describe("Owning domain id."),
|
|
3089
|
+
etag: v.string().optional().describe("Concurrency token encoding id and ver."),
|
|
3090
|
+
id: v.string().optional().describe("Unique identifier of the article."),
|
|
3091
|
+
index_state: v.enum([
|
|
3092
|
+
"INDEX_STATE_UNSPECIFIED",
|
|
3093
|
+
"PENDING",
|
|
3094
|
+
"INDEXING",
|
|
3095
|
+
"INDEXED",
|
|
3096
|
+
"FAILED"
|
|
3097
|
+
]).default("INDEX_STATE_UNSPECIFIED").describe("Indexing state."),
|
|
3098
|
+
parent_id: v.string().optional().describe("Parent article id; 0 for a top-level article."),
|
|
3099
|
+
published: v.object({
|
|
3100
|
+
article_id: v.string().optional().describe("Owning article id."),
|
|
3101
|
+
body_markdown: v.string().optional().describe("Markdown serialization (chunking input)."),
|
|
3102
|
+
body_plain: v.string().optional().describe("Plaintext serialization (full-text source)."),
|
|
3103
|
+
body_rich_text: v.looseObject({}).optional().describe("Editor document for this version."),
|
|
3104
|
+
created_at: v.string().optional().describe("CreatedAt timestamp (epoch ms)."),
|
|
3105
|
+
created_by: v.object({
|
|
3106
|
+
id: v.string().optional(),
|
|
3107
|
+
name: v.string().optional()
|
|
3108
|
+
}).optional().describe("User who authored the version."),
|
|
3109
|
+
id: v.string().optional().describe("Unique identifier of the version."),
|
|
3110
|
+
notes: v.string().optional().describe("Optional author notes."),
|
|
3111
|
+
restored_from: v.string().optional().describe("Version this one was restored from; 0 if authored directly."),
|
|
3112
|
+
subject: v.string().optional().describe("Versioned subject."),
|
|
3113
|
+
version_number: v.int().optional().describe("Monotonic version number within the article.")
|
|
3114
|
+
}).optional().describe("Published version, only when requested in fields."),
|
|
2945
3115
|
published_version_id: v.string().optional().describe("Published version id; 0 if not yet published."),
|
|
2946
3116
|
space: v.object({
|
|
2947
3117
|
id: v.string().optional(),
|
|
@@ -2985,6 +3155,22 @@ v.object({
|
|
|
2985
3155
|
"FAILED"
|
|
2986
3156
|
]).default("INDEX_STATE_UNSPECIFIED").describe("Indexing state."),
|
|
2987
3157
|
parent_id: v.string().optional().describe("Parent article id; 0 for a top-level article."),
|
|
3158
|
+
published: v.object({
|
|
3159
|
+
article_id: v.string().optional().describe("Owning article id."),
|
|
3160
|
+
body_markdown: v.string().optional().describe("Markdown serialization (chunking input)."),
|
|
3161
|
+
body_plain: v.string().optional().describe("Plaintext serialization (full-text source)."),
|
|
3162
|
+
body_rich_text: v.looseObject({}).optional().describe("Editor document for this version."),
|
|
3163
|
+
created_at: v.string().optional().describe("CreatedAt timestamp (epoch ms)."),
|
|
3164
|
+
created_by: v.object({
|
|
3165
|
+
id: v.string().optional(),
|
|
3166
|
+
name: v.string().optional()
|
|
3167
|
+
}).optional().describe("User who authored the version."),
|
|
3168
|
+
id: v.string().optional().describe("Unique identifier of the version."),
|
|
3169
|
+
notes: v.string().optional().describe("Optional author notes."),
|
|
3170
|
+
restored_from: v.string().optional().describe("Version this one was restored from; 0 if authored directly."),
|
|
3171
|
+
subject: v.string().optional().describe("Versioned subject."),
|
|
3172
|
+
version_number: v.int().optional().describe("Monotonic version number within the article.")
|
|
3173
|
+
}).optional().describe("Published version, only when requested in fields."),
|
|
2988
3174
|
published_version_id: v.string().optional().describe("Published version id; 0 if not yet published."),
|
|
2989
3175
|
space: v.object({
|
|
2990
3176
|
id: v.string().optional(),
|
|
@@ -3030,6 +3216,22 @@ v.object({
|
|
|
3030
3216
|
"FAILED"
|
|
3031
3217
|
]).default("INDEX_STATE_UNSPECIFIED").describe("Indexing state."),
|
|
3032
3218
|
parent_id: v.string().optional().describe("Parent article id; 0 for a top-level article."),
|
|
3219
|
+
published: v.object({
|
|
3220
|
+
article_id: v.string().optional().describe("Owning article id."),
|
|
3221
|
+
body_markdown: v.string().optional().describe("Markdown serialization (chunking input)."),
|
|
3222
|
+
body_plain: v.string().optional().describe("Plaintext serialization (full-text source)."),
|
|
3223
|
+
body_rich_text: v.looseObject({}).optional().describe("Editor document for this version."),
|
|
3224
|
+
created_at: v.string().optional().describe("CreatedAt timestamp (epoch ms)."),
|
|
3225
|
+
created_by: v.object({
|
|
3226
|
+
id: v.string().optional(),
|
|
3227
|
+
name: v.string().optional()
|
|
3228
|
+
}).optional().describe("User who authored the version."),
|
|
3229
|
+
id: v.string().optional().describe("Unique identifier of the version."),
|
|
3230
|
+
notes: v.string().optional().describe("Optional author notes."),
|
|
3231
|
+
restored_from: v.string().optional().describe("Version this one was restored from; 0 if authored directly."),
|
|
3232
|
+
subject: v.string().optional().describe("Versioned subject."),
|
|
3233
|
+
version_number: v.int().optional().describe("Monotonic version number within the article.")
|
|
3234
|
+
}).optional().describe("Published version, only when requested in fields."),
|
|
3033
3235
|
published_version_id: v.string().optional().describe("Published version id; 0 if not yet published."),
|
|
3034
3236
|
space: v.object({
|
|
3035
3237
|
id: v.string().optional(),
|
|
@@ -4612,7 +4814,21 @@ v.object({
|
|
|
4612
4814
|
contact_id: v.array(v.string()).optional(),
|
|
4613
4815
|
schema_id: v.array(v.int()).optional(),
|
|
4614
4816
|
has_transfer: v.boolean().optional(),
|
|
4615
|
-
timeline: v.boolean().optional()
|
|
4817
|
+
timeline: v.boolean().optional(),
|
|
4818
|
+
excluded_queue_types: v.array(v.enum([
|
|
4819
|
+
"QUEUE_TYPE_UNSPECIFIED",
|
|
4820
|
+
"QUEUE_TYPE_OFFLINE",
|
|
4821
|
+
"QUEUE_TYPE_INBOUND_CALL",
|
|
4822
|
+
"QUEUE_TYPE_IVR_CALL",
|
|
4823
|
+
"QUEUE_TYPE_PREVIEW_CALL",
|
|
4824
|
+
"QUEUE_TYPE_PROGRESSIVE_CALL",
|
|
4825
|
+
"QUEUE_TYPE_PREDICTIVE_CALL",
|
|
4826
|
+
"QUEUE_TYPE_INBOUND_CHAT",
|
|
4827
|
+
"QUEUE_TYPE_AGENT_TASK",
|
|
4828
|
+
"QUEUE_TYPE_OUTBOUND_TASK",
|
|
4829
|
+
"QUEUE_TYPE_INBOUND_IM",
|
|
4830
|
+
"QUEUE_TYPE_OUTBOUND_CALL"
|
|
4831
|
+
])).optional()
|
|
4616
4832
|
}), v.object({
|
|
4617
4833
|
items: v.array(v.object({
|
|
4618
4834
|
tags: v.array(v.string()).optional(),
|
|
@@ -4856,6 +5072,20 @@ v.object({
|
|
|
4856
5072
|
from: v.string().optional(),
|
|
4857
5073
|
to: v.string().optional()
|
|
4858
5074
|
}).optional(),
|
|
5075
|
+
excluded_queue_types: v.array(v.enum([
|
|
5076
|
+
"QUEUE_TYPE_UNSPECIFIED",
|
|
5077
|
+
"QUEUE_TYPE_OFFLINE",
|
|
5078
|
+
"QUEUE_TYPE_INBOUND_CALL",
|
|
5079
|
+
"QUEUE_TYPE_IVR_CALL",
|
|
5080
|
+
"QUEUE_TYPE_PREVIEW_CALL",
|
|
5081
|
+
"QUEUE_TYPE_PROGRESSIVE_CALL",
|
|
5082
|
+
"QUEUE_TYPE_PREDICTIVE_CALL",
|
|
5083
|
+
"QUEUE_TYPE_INBOUND_CHAT",
|
|
5084
|
+
"QUEUE_TYPE_AGENT_TASK",
|
|
5085
|
+
"QUEUE_TYPE_OUTBOUND_TASK",
|
|
5086
|
+
"QUEUE_TYPE_INBOUND_IM",
|
|
5087
|
+
"QUEUE_TYPE_OUTBOUND_CALL"
|
|
5088
|
+
]).default("QUEUE_TYPE_UNSPECIFIED")).optional(),
|
|
4859
5089
|
fields: v.array(v.string()).optional(),
|
|
4860
5090
|
fts: v.string().optional(),
|
|
4861
5091
|
gateway_id: v.array(v.string()).optional(),
|
|
@@ -6147,6 +6377,27 @@ v.object({
|
|
|
6147
6377
|
date_from: v.string().optional(),
|
|
6148
6378
|
date_to: v.string().optional(),
|
|
6149
6379
|
emails_count: v.string().optional()
|
|
6380
|
+
}), v.object({
|
|
6381
|
+
case_id: v.string(),
|
|
6382
|
+
type: v.enum([
|
|
6383
|
+
"chat",
|
|
6384
|
+
"call",
|
|
6385
|
+
"email"
|
|
6386
|
+
]),
|
|
6387
|
+
id: v.string()
|
|
6388
|
+
}), v.object({
|
|
6389
|
+
postprocessing: v.array(v.object({
|
|
6390
|
+
agent: v.object({
|
|
6391
|
+
id: v.string().optional(),
|
|
6392
|
+
name: v.string().optional()
|
|
6393
|
+
}).optional(),
|
|
6394
|
+
form: v.unknown().optional(),
|
|
6395
|
+
reporting_at: v.string().optional()
|
|
6396
|
+
})).optional(),
|
|
6397
|
+
variables: v.array(v.object({
|
|
6398
|
+
key: v.string().optional(),
|
|
6399
|
+
value: v.string().optional()
|
|
6400
|
+
})).optional()
|
|
6150
6401
|
}), v.object({
|
|
6151
6402
|
page: v.int().optional().describe("Page number for pagination."),
|
|
6152
6403
|
size: v.int().optional().describe("Number of results per page."),
|
|
@@ -17313,7 +17564,7 @@ v.object({
|
|
|
17313
17564
|
provider: v.string().optional().describe("Provider key (gemini, openai, cohere, azure, bge-m3, e5, bge-reranker, byom)."),
|
|
17314
17565
|
type: v.string().optional().describe("Model type: \"embedding\" or \"reranker\"."),
|
|
17315
17566
|
validated_at: v.string().optional().describe("Timestamp of the last successful validation (epoch ms); 0 if never validated.")
|
|
17316
|
-
}).describe("EmbeddingModel is a registry entry read model (credential omitted)."), v.object({ id: v.string().describe("Model id.") }), v.object({
|
|
17567
|
+
}).describe("EmbeddingModel is a registry entry read model (credential omitted)."), v.object({ id: v.string().describe("Model id.") }), v.object({ x_json_mask: v.array(v.string()).optional().describe("Input fields to apply, filled by the gateway from a PATCH body.") }), v.object({
|
|
17317
17568
|
api_key: v.string().optional().describe("Write-only provider credential; encrypted at rest, never read back."),
|
|
17318
17569
|
dimensions: v.int().optional().describe("Embedding dimension; omit for rerankers."),
|
|
17319
17570
|
endpoint: v.string().optional().describe("Self-hosted / Azure / BYOM endpoint url."),
|
|
@@ -17338,7 +17589,7 @@ v.object({
|
|
|
17338
17589
|
provider: v.string().optional().describe("Provider key (gemini, openai, cohere, azure, bge-m3, e5, bge-reranker, byom)."),
|
|
17339
17590
|
type: v.string().optional().describe("Model type: \"embedding\" or \"reranker\"."),
|
|
17340
17591
|
validated_at: v.string().optional().describe("Timestamp of the last successful validation (epoch ms); 0 if never validated.")
|
|
17341
|
-
}).describe("EmbeddingModel is a registry entry read model (credential omitted)."), v.object({ id: v.string().describe("Model id.") }), v.object({
|
|
17592
|
+
}).describe("EmbeddingModel is a registry entry read model (credential omitted)."), v.object({ id: v.string().describe("Model id.") }), v.object({ x_json_mask: v.array(v.string()).optional().describe("Input fields to apply, filled by the gateway from a PATCH body.") }), v.object({
|
|
17342
17593
|
api_key: v.string().optional().describe("Write-only provider credential; encrypted at rest, never read back."),
|
|
17343
17594
|
dimensions: v.int().optional().describe("Embedding dimension; omit for rerankers."),
|
|
17344
17595
|
endpoint: v.string().optional().describe("Self-hosted / Azure / BYOM endpoint url."),
|
|
@@ -22727,7 +22978,10 @@ v.array(ke), v.object({
|
|
|
22727
22978
|
}).optional()
|
|
22728
22979
|
})).optional(),
|
|
22729
22980
|
next: v.boolean().optional()
|
|
22730
|
-
}), v.object({ id: v.string() }), v.object({
|
|
22981
|
+
}), v.object({ id: v.string() }), v.object({
|
|
22982
|
+
domain_id: v.string().optional(),
|
|
22983
|
+
force: v.boolean().optional()
|
|
22984
|
+
}), v.object({
|
|
22731
22985
|
created_at: v.string().optional(),
|
|
22732
22986
|
created_by: v.object({
|
|
22733
22987
|
id: v.string().optional(),
|
|
@@ -23104,6 +23358,7 @@ v.array(ke), v.object({
|
|
|
23104
23358
|
}).optional()
|
|
23105
23359
|
}).optional(),
|
|
23106
23360
|
display: v.string().optional(),
|
|
23361
|
+
duration: v.string().optional(),
|
|
23107
23362
|
id: v.string().optional(),
|
|
23108
23363
|
joined_at: v.string().optional(),
|
|
23109
23364
|
leaving_at: v.string().optional(),
|
|
@@ -28792,7 +29047,11 @@ v.array(Pe), v.object({
|
|
|
28792
29047
|
query: v.string().optional().describe("Free-text query."),
|
|
28793
29048
|
space_ids: v.array(v.string()).optional().describe("Spaces to search within."),
|
|
28794
29049
|
tags: v.array(v.string()).optional().describe("Optional tag filter."),
|
|
28795
|
-
tag_match: v.enum([
|
|
29050
|
+
tag_match: v.enum([
|
|
29051
|
+
"TAG_MATCH_UNSPECIFIED",
|
|
29052
|
+
"TAG_MATCH_ALL",
|
|
29053
|
+
"TAG_MATCH_ANY"
|
|
29054
|
+
]).default("TAG_MATCH_UNSPECIFIED").describe("How to combine the tag filter; unspecified means any.\n\n - TAG_MATCH_UNSPECIFIED: Default mode: match articles having ANY listed tag (OR).\n - TAG_MATCH_ALL: Match articles having ALL listed tags (AND).\n - TAG_MATCH_ANY: Match articles having ANY listed tag (OR)."),
|
|
28796
29055
|
size: v.int().optional().describe("Page size."),
|
|
28797
29056
|
page: v.int().optional().describe("Page number (1-based).")
|
|
28798
29057
|
}), v.object({
|
|
@@ -28825,7 +29084,11 @@ v.array(Pe), v.object({
|
|
|
28825
29084
|
include_citations: v.boolean().optional().describe("Whether to include structured citations."),
|
|
28826
29085
|
query: v.string().optional().describe("Natural-language query (e.g. STT transcript)."),
|
|
28827
29086
|
space_ids: v.array(v.string()).optional().describe("Spaces to search within (bot service scope)."),
|
|
28828
|
-
tag_match: v.enum([
|
|
29087
|
+
tag_match: v.enum([
|
|
29088
|
+
"TAG_MATCH_UNSPECIFIED",
|
|
29089
|
+
"TAG_MATCH_ALL",
|
|
29090
|
+
"TAG_MATCH_ANY"
|
|
29091
|
+
]).default("TAG_MATCH_UNSPECIFIED").describe("How to combine the tag filter; unspecified means any."),
|
|
28829
29092
|
top_k: v.int().optional().describe("Maximum number of chunks to return.")
|
|
28830
29093
|
}).describe("SemanticSearchRequest parameters for hybrid retrieval."), v.object({
|
|
28831
29094
|
chunks: v.array(v.object({
|
|
@@ -31025,7 +31288,7 @@ v.array(Le), v.object({
|
|
|
31025
31288
|
name: v.string().optional()
|
|
31026
31289
|
}).optional().describe("User who last updated the space."),
|
|
31027
31290
|
vector_search_enabled: v.boolean().optional().describe("Whether articles in this space are embedded for vector search.")
|
|
31028
|
-
}).describe("Space is a knowledge-base space read model."), v.object({ id: v.string().describe("Space id.") }), v.object({
|
|
31291
|
+
}).describe("Space is a knowledge-base space read model."), v.object({ id: v.string().describe("Space id.") }), v.object({ x_json_mask: v.array(v.string()).optional().describe("Input fields to apply, filled by the gateway from a PATCH body.") }), v.object({
|
|
31029
31292
|
chunking_strategy: v.string().optional().describe("Chunking strategy identifier."),
|
|
31030
31293
|
description: v.string().optional().describe("Free-text description."),
|
|
31031
31294
|
embedding_model_id: v.string().optional().describe("Active embedding model id."),
|
|
@@ -31063,7 +31326,7 @@ v.array(Le), v.object({
|
|
|
31063
31326
|
name: v.string().optional()
|
|
31064
31327
|
}).optional().describe("User who last updated the space."),
|
|
31065
31328
|
vector_search_enabled: v.boolean().optional().describe("Whether articles in this space are embedded for vector search.")
|
|
31066
|
-
}).describe("Space is a knowledge-base space read model."), v.object({ id: v.string().describe("Space id.") }), v.object({
|
|
31329
|
+
}).describe("Space is a knowledge-base space read model."), v.object({ id: v.string().describe("Space id.") }), v.object({ x_json_mask: v.array(v.string()).optional().describe("Input fields to apply, filled by the gateway from a PATCH body.") }), v.object({
|
|
31067
31330
|
chunking_strategy: v.string().optional().describe("Chunking strategy identifier."),
|
|
31068
31331
|
description: v.string().optional().describe("Free-text description."),
|
|
31069
31332
|
embedding_model_id: v.string().optional().describe("Active embedding model id."),
|
|
@@ -35132,13 +35395,6 @@ v.object({
|
|
|
35132
35395
|
"ROLE_SUPERVISOR"
|
|
35133
35396
|
]).default("ROLE_UNSPECIFIED")
|
|
35134
35397
|
}).optional().describe("Member who deleted the message, enriched exactly like sender; unset while\nthe message is live."),
|
|
35135
|
-
delivery_status: v.enum([
|
|
35136
|
-
"MESSAGE_DELIVERY_STATUS_UNSPECIFIED",
|
|
35137
|
-
"MESSAGE_DELIVERY_STATUS_SENT",
|
|
35138
|
-
"MESSAGE_DELIVERY_STATUS_DELIVERED",
|
|
35139
|
-
"MESSAGE_DELIVERY_STATUS_READ",
|
|
35140
|
-
"MESSAGE_DELIVERY_STATUS_FAILED"
|
|
35141
|
-
]).default("MESSAGE_DELIVERY_STATUS_UNSPECIFIED").describe("Aggregated delivery status across recipients: FAILED when every\nrecipient failed, otherwise the minimal status among non-failed ones.\nUNSPECIFIED for messages without per-recipient tracking (historical)."),
|
|
35142
35398
|
documents: v.array(v.object({
|
|
35143
35399
|
created_at: v.string().optional().describe("Creation timestamp (Unix time, milliseconds)."),
|
|
35144
35400
|
file_id: v.string().optional().describe("File storage identifier."),
|
|
@@ -35386,21 +35642,6 @@ v.object({
|
|
|
35386
35642
|
]).default("ROLE_UNSPECIFIED")
|
|
35387
35643
|
}).optional().describe("Sender user aggregated information."),
|
|
35388
35644
|
seq: v.string().optional().describe("Per-thread monotonic sequence number, assigned on message creation."),
|
|
35389
|
-
statuses: v.array(v.object({
|
|
35390
|
-
delivered_at: v.string().optional().describe("Unix time in milliseconds; zero when not reached."),
|
|
35391
|
-
error: v.string().optional().describe("JSON-encoded provider error details for FAILED."),
|
|
35392
|
-
failed_at: v.string().optional(),
|
|
35393
|
-
member_id: v.string().optional().describe("Recipient contact id."),
|
|
35394
|
-
read_at: v.string().optional(),
|
|
35395
|
-
status: v.enum([
|
|
35396
|
-
"MESSAGE_DELIVERY_STATUS_UNSPECIFIED",
|
|
35397
|
-
"MESSAGE_DELIVERY_STATUS_SENT",
|
|
35398
|
-
"MESSAGE_DELIVERY_STATUS_DELIVERED",
|
|
35399
|
-
"MESSAGE_DELIVERY_STATUS_READ",
|
|
35400
|
-
"MESSAGE_DELIVERY_STATUS_FAILED"
|
|
35401
|
-
]).default("MESSAGE_DELIVERY_STATUS_UNSPECIFIED").describe("MessageDeliveryStatus is a per-recipient delivery state of a message.\nTransitions are monotonic: SENT -> DELIVERED -> READ.\nFAILED is terminal but may be superseded by a later DELIVERED (retry).\n\n - MESSAGE_DELIVERY_STATUS_SENT: Accepted by the system and queued for delivery.\n - MESSAGE_DELIVERY_STATUS_DELIVERED: Reached the recipient (stream ACK, push, provider receipt, bot dispatch).\n - MESSAGE_DELIVERY_STATUS_READ: Read by the recipient. Not applicable to bots.\n - MESSAGE_DELIVERY_STATUS_FAILED: Delivery failed (provider rejected, invalid contact, channel restriction)."),
|
|
35402
|
-
via: v.string().optional().describe("Confirmation source: ws|push|provider|bot.")
|
|
35403
|
-
}).describe("MessageRecipientStatus is a per-recipient delivery state of a message.")).optional().describe("Per-recipient delivery details."),
|
|
35404
35645
|
system: v.object({
|
|
35405
35646
|
message_id: v.string().optional().describe("ID of message for which system messages is binded."),
|
|
35406
35647
|
metadata: v.looseObject({}).optional().describe("Represents additional metadata binded into system message."),
|
|
@@ -35410,7 +35651,8 @@ v.object({
|
|
|
35410
35651
|
type: v.int().optional().describe("Message type identifier.")
|
|
35411
35652
|
}).describe("HistoryMessage represents a single message\nin thread history.")).optional().describe("List of messages matching the search criteria."),
|
|
35412
35653
|
next_cursor: v.object({ id: v.string().optional().describe("Unique identifier last message where cursor stopped.") }).optional().describe("Cursor that represents position to get older messages (used without 'before' param)."),
|
|
35413
|
-
prev_cursor: v.object({ id: v.string().optional().describe("Unique identifier last message where cursor stopped.") }).optional().describe("Cursor that represents position to get newest messages (used with 'before' param).")
|
|
35654
|
+
prev_cursor: v.object({ id: v.string().optional().describe("Unique identifier last message where cursor stopped.") }).optional().describe("Cursor that represents position to get newest messages (used with 'before' param)."),
|
|
35655
|
+
updates_cursor: v.string().optional().describe("GetUpdates cursor read before this page: every later change comes from GetUpdates(updates_cursor).")
|
|
35414
35656
|
}).describe("SearchMessageHistoryResponse contains\nmessage history search results and pagination metadata."), v.object({ message_id: v.string() }), v.object({ items: v.array(v.object({
|
|
35415
35657
|
action: v.enum([
|
|
35416
35658
|
"MESSAGE_REVISION_ACTION_UNSPECIFIED",
|
|
@@ -35527,13 +35769,6 @@ v.object({
|
|
|
35527
35769
|
"ROLE_SUPERVISOR"
|
|
35528
35770
|
]).default("ROLE_UNSPECIFIED")
|
|
35529
35771
|
}).optional().describe("Member who deleted the message, enriched exactly like sender; unset while\nthe message is live."),
|
|
35530
|
-
delivery_status: v.enum([
|
|
35531
|
-
"MESSAGE_DELIVERY_STATUS_UNSPECIFIED",
|
|
35532
|
-
"MESSAGE_DELIVERY_STATUS_SENT",
|
|
35533
|
-
"MESSAGE_DELIVERY_STATUS_DELIVERED",
|
|
35534
|
-
"MESSAGE_DELIVERY_STATUS_READ",
|
|
35535
|
-
"MESSAGE_DELIVERY_STATUS_FAILED"
|
|
35536
|
-
]).default("MESSAGE_DELIVERY_STATUS_UNSPECIFIED").describe("Aggregated delivery status across recipients: FAILED when every\nrecipient failed, otherwise the minimal status among non-failed ones.\nUNSPECIFIED for messages without per-recipient tracking (historical)."),
|
|
35537
35772
|
documents: v.array(v.object({
|
|
35538
35773
|
created_at: v.string().optional().describe("Creation timestamp (Unix time, milliseconds)."),
|
|
35539
35774
|
file_id: v.string().optional().describe("File storage identifier."),
|
|
@@ -35781,21 +36016,6 @@ v.object({
|
|
|
35781
36016
|
]).default("ROLE_UNSPECIFIED")
|
|
35782
36017
|
}).optional().describe("Sender user aggregated information."),
|
|
35783
36018
|
seq: v.string().optional().describe("Per-thread monotonic sequence number, assigned on message creation."),
|
|
35784
|
-
statuses: v.array(v.object({
|
|
35785
|
-
delivered_at: v.string().optional().describe("Unix time in milliseconds; zero when not reached."),
|
|
35786
|
-
error: v.string().optional().describe("JSON-encoded provider error details for FAILED."),
|
|
35787
|
-
failed_at: v.string().optional(),
|
|
35788
|
-
member_id: v.string().optional().describe("Recipient contact id."),
|
|
35789
|
-
read_at: v.string().optional(),
|
|
35790
|
-
status: v.enum([
|
|
35791
|
-
"MESSAGE_DELIVERY_STATUS_UNSPECIFIED",
|
|
35792
|
-
"MESSAGE_DELIVERY_STATUS_SENT",
|
|
35793
|
-
"MESSAGE_DELIVERY_STATUS_DELIVERED",
|
|
35794
|
-
"MESSAGE_DELIVERY_STATUS_READ",
|
|
35795
|
-
"MESSAGE_DELIVERY_STATUS_FAILED"
|
|
35796
|
-
]).default("MESSAGE_DELIVERY_STATUS_UNSPECIFIED").describe("MessageDeliveryStatus is a per-recipient delivery state of a message.\nTransitions are monotonic: SENT -> DELIVERED -> READ.\nFAILED is terminal but may be superseded by a later DELIVERED (retry).\n\n - MESSAGE_DELIVERY_STATUS_SENT: Accepted by the system and queued for delivery.\n - MESSAGE_DELIVERY_STATUS_DELIVERED: Reached the recipient (stream ACK, push, provider receipt, bot dispatch).\n - MESSAGE_DELIVERY_STATUS_READ: Read by the recipient. Not applicable to bots.\n - MESSAGE_DELIVERY_STATUS_FAILED: Delivery failed (provider rejected, invalid contact, channel restriction)."),
|
|
35797
|
-
via: v.string().optional().describe("Confirmation source: ws|push|provider|bot.")
|
|
35798
|
-
}).describe("MessageRecipientStatus is a per-recipient delivery state of a message.")).optional().describe("Per-recipient delivery details."),
|
|
35799
36019
|
system: v.object({
|
|
35800
36020
|
message_id: v.string().optional().describe("ID of message for which system messages is binded."),
|
|
35801
36021
|
metadata: v.looseObject({}).optional().describe("Represents additional metadata binded into system message."),
|
|
@@ -35805,7 +36025,8 @@ v.object({
|
|
|
35805
36025
|
type: v.int().optional().describe("Message type identifier.")
|
|
35806
36026
|
}).describe("HistoryMessage represents a single message\nin thread history.")).optional().describe("List of messages matching the search criteria."),
|
|
35807
36027
|
next_cursor: v.object({ id: v.string().optional().describe("Unique identifier last message where cursor stopped.") }).optional().describe("Cursor that represents position to get older messages (used without 'before' param)."),
|
|
35808
|
-
prev_cursor: v.object({ id: v.string().optional().describe("Unique identifier last message where cursor stopped.") }).optional().describe("Cursor that represents position to get newest messages (used with 'before' param).")
|
|
36028
|
+
prev_cursor: v.object({ id: v.string().optional().describe("Unique identifier last message where cursor stopped.") }).optional().describe("Cursor that represents position to get newest messages (used with 'before' param)."),
|
|
36029
|
+
updates_cursor: v.string().optional().describe("GetUpdates cursor read before this page: every later change comes from GetUpdates(updates_cursor).")
|
|
35809
36030
|
}).describe("SearchMessageHistoryResponse contains\nmessage history search results and pagination metadata."), v.object({ thread_id: v.string().describe("Filter by thread IDs.") }), v.object({
|
|
35810
36031
|
fields: v.array(v.string()).optional().describe("List of message fields to be returned.\nUsed to reduce payload size."),
|
|
35811
36032
|
ids: v.array(v.string()).optional().describe("Filter by specific message IDs."),
|
|
@@ -35868,13 +36089,6 @@ v.object({
|
|
|
35868
36089
|
"ROLE_SUPERVISOR"
|
|
35869
36090
|
]).default("ROLE_UNSPECIFIED")
|
|
35870
36091
|
}).optional().describe("Member who deleted the message, enriched exactly like sender; unset while\nthe message is live."),
|
|
35871
|
-
delivery_status: v.enum([
|
|
35872
|
-
"MESSAGE_DELIVERY_STATUS_UNSPECIFIED",
|
|
35873
|
-
"MESSAGE_DELIVERY_STATUS_SENT",
|
|
35874
|
-
"MESSAGE_DELIVERY_STATUS_DELIVERED",
|
|
35875
|
-
"MESSAGE_DELIVERY_STATUS_READ",
|
|
35876
|
-
"MESSAGE_DELIVERY_STATUS_FAILED"
|
|
35877
|
-
]).default("MESSAGE_DELIVERY_STATUS_UNSPECIFIED").describe("Aggregated delivery status across recipients: FAILED when every\nrecipient failed, otherwise the minimal status among non-failed ones.\nUNSPECIFIED for messages without per-recipient tracking (historical)."),
|
|
35878
36092
|
documents: v.array(v.object({
|
|
35879
36093
|
created_at: v.string().optional().describe("Creation timestamp (Unix time, milliseconds)."),
|
|
35880
36094
|
file_id: v.string().optional().describe("File storage identifier."),
|
|
@@ -36122,21 +36336,6 @@ v.object({
|
|
|
36122
36336
|
]).default("ROLE_UNSPECIFIED")
|
|
36123
36337
|
}).optional().describe("Sender user aggregated information."),
|
|
36124
36338
|
seq: v.string().optional().describe("Per-thread monotonic sequence number, assigned on message creation."),
|
|
36125
|
-
statuses: v.array(v.object({
|
|
36126
|
-
delivered_at: v.string().optional().describe("Unix time in milliseconds; zero when not reached."),
|
|
36127
|
-
error: v.string().optional().describe("JSON-encoded provider error details for FAILED."),
|
|
36128
|
-
failed_at: v.string().optional(),
|
|
36129
|
-
member_id: v.string().optional().describe("Recipient contact id."),
|
|
36130
|
-
read_at: v.string().optional(),
|
|
36131
|
-
status: v.enum([
|
|
36132
|
-
"MESSAGE_DELIVERY_STATUS_UNSPECIFIED",
|
|
36133
|
-
"MESSAGE_DELIVERY_STATUS_SENT",
|
|
36134
|
-
"MESSAGE_DELIVERY_STATUS_DELIVERED",
|
|
36135
|
-
"MESSAGE_DELIVERY_STATUS_READ",
|
|
36136
|
-
"MESSAGE_DELIVERY_STATUS_FAILED"
|
|
36137
|
-
]).default("MESSAGE_DELIVERY_STATUS_UNSPECIFIED").describe("MessageDeliveryStatus is a per-recipient delivery state of a message.\nTransitions are monotonic: SENT -> DELIVERED -> READ.\nFAILED is terminal but may be superseded by a later DELIVERED (retry).\n\n - MESSAGE_DELIVERY_STATUS_SENT: Accepted by the system and queued for delivery.\n - MESSAGE_DELIVERY_STATUS_DELIVERED: Reached the recipient (stream ACK, push, provider receipt, bot dispatch).\n - MESSAGE_DELIVERY_STATUS_READ: Read by the recipient. Not applicable to bots.\n - MESSAGE_DELIVERY_STATUS_FAILED: Delivery failed (provider rejected, invalid contact, channel restriction)."),
|
|
36138
|
-
via: v.string().optional().describe("Confirmation source: ws|push|provider|bot.")
|
|
36139
|
-
}).describe("MessageRecipientStatus is a per-recipient delivery state of a message.")).optional().describe("Per-recipient delivery details."),
|
|
36140
36339
|
system: v.object({
|
|
36141
36340
|
message_id: v.string().optional().describe("ID of message for which system messages is binded."),
|
|
36142
36341
|
metadata: v.looseObject({}).optional().describe("Represents additional metadata binded into system message."),
|
|
@@ -36146,7 +36345,8 @@ v.object({
|
|
|
36146
36345
|
type: v.int().optional().describe("Message type identifier.")
|
|
36147
36346
|
}).describe("HistoryMessage represents a single message\nin thread history.")).optional().describe("List of messages matching the search criteria."),
|
|
36148
36347
|
next_cursor: v.object({ id: v.string().optional().describe("Unique identifier last message where cursor stopped.") }).optional().describe("Cursor that represents position to get older messages (used without 'before' param)."),
|
|
36149
|
-
prev_cursor: v.object({ id: v.string().optional().describe("Unique identifier last message where cursor stopped.") }).optional().describe("Cursor that represents position to get newest messages (used with 'before' param).")
|
|
36348
|
+
prev_cursor: v.object({ id: v.string().optional().describe("Unique identifier last message where cursor stopped.") }).optional().describe("Cursor that represents position to get newest messages (used with 'before' param)."),
|
|
36349
|
+
updates_cursor: v.string().optional().describe("GetUpdates cursor read before this page: every later change comes from GetUpdates(updates_cursor).")
|
|
36150
36350
|
}).describe("SearchMessageHistoryResponse contains\nmessage history search results and pagination metadata."), v.object({
|
|
36151
36351
|
fields: v.array(v.string()).optional().describe("List of fields that should be returned in the response.\nIf empty, a default set of fields is returned.\nUsed for response optimization."),
|
|
36152
36352
|
ids: v.array(v.string()).optional().describe("Filter by specific thread IDs."),
|
|
@@ -36219,13 +36419,6 @@ v.object({
|
|
|
36219
36419
|
"ROLE_SUPERVISOR"
|
|
36220
36420
|
]).default("ROLE_UNSPECIFIED")
|
|
36221
36421
|
}).optional().describe("Member who deleted the message, enriched exactly like sender; unset while\nthe message is live."),
|
|
36222
|
-
delivery_status: v.enum([
|
|
36223
|
-
"MESSAGE_DELIVERY_STATUS_UNSPECIFIED",
|
|
36224
|
-
"MESSAGE_DELIVERY_STATUS_SENT",
|
|
36225
|
-
"MESSAGE_DELIVERY_STATUS_DELIVERED",
|
|
36226
|
-
"MESSAGE_DELIVERY_STATUS_READ",
|
|
36227
|
-
"MESSAGE_DELIVERY_STATUS_FAILED"
|
|
36228
|
-
]).default("MESSAGE_DELIVERY_STATUS_UNSPECIFIED").describe("Aggregated delivery status across recipients: FAILED when every\nrecipient failed, otherwise the minimal status among non-failed ones.\nUNSPECIFIED for messages without per-recipient tracking (historical)."),
|
|
36229
36422
|
documents: v.array(v.object({
|
|
36230
36423
|
created_at: v.string().optional().describe("Creation timestamp (Unix time, milliseconds)."),
|
|
36231
36424
|
file_id: v.string().optional().describe("File storage identifier."),
|
|
@@ -36473,21 +36666,6 @@ v.object({
|
|
|
36473
36666
|
]).default("ROLE_UNSPECIFIED")
|
|
36474
36667
|
}).optional().describe("Sender user aggregated information."),
|
|
36475
36668
|
seq: v.string().optional().describe("Per-thread monotonic sequence number, assigned on message creation."),
|
|
36476
|
-
statuses: v.array(v.object({
|
|
36477
|
-
delivered_at: v.string().optional().describe("Unix time in milliseconds; zero when not reached."),
|
|
36478
|
-
error: v.string().optional().describe("JSON-encoded provider error details for FAILED."),
|
|
36479
|
-
failed_at: v.string().optional(),
|
|
36480
|
-
member_id: v.string().optional().describe("Recipient contact id."),
|
|
36481
|
-
read_at: v.string().optional(),
|
|
36482
|
-
status: v.enum([
|
|
36483
|
-
"MESSAGE_DELIVERY_STATUS_UNSPECIFIED",
|
|
36484
|
-
"MESSAGE_DELIVERY_STATUS_SENT",
|
|
36485
|
-
"MESSAGE_DELIVERY_STATUS_DELIVERED",
|
|
36486
|
-
"MESSAGE_DELIVERY_STATUS_READ",
|
|
36487
|
-
"MESSAGE_DELIVERY_STATUS_FAILED"
|
|
36488
|
-
]).default("MESSAGE_DELIVERY_STATUS_UNSPECIFIED").describe("MessageDeliveryStatus is a per-recipient delivery state of a message.\nTransitions are monotonic: SENT -> DELIVERED -> READ.\nFAILED is terminal but may be superseded by a later DELIVERED (retry).\n\n - MESSAGE_DELIVERY_STATUS_SENT: Accepted by the system and queued for delivery.\n - MESSAGE_DELIVERY_STATUS_DELIVERED: Reached the recipient (stream ACK, push, provider receipt, bot dispatch).\n - MESSAGE_DELIVERY_STATUS_READ: Read by the recipient. Not applicable to bots.\n - MESSAGE_DELIVERY_STATUS_FAILED: Delivery failed (provider rejected, invalid contact, channel restriction)."),
|
|
36489
|
-
via: v.string().optional().describe("Confirmation source: ws|push|provider|bot.")
|
|
36490
|
-
}).describe("MessageRecipientStatus is a per-recipient delivery state of a message.")).optional().describe("Per-recipient delivery details."),
|
|
36491
36669
|
system: v.object({
|
|
36492
36670
|
message_id: v.string().optional().describe("ID of message for which system messages is binded."),
|
|
36493
36671
|
metadata: v.looseObject({}).optional().describe("Represents additional metadata binded into system message."),
|
|
@@ -36539,6 +36717,54 @@ v.object({
|
|
|
36539
36717
|
"ROLE_SUPERVISOR"
|
|
36540
36718
|
]).default("ROLE_UNSPECIFIED")
|
|
36541
36719
|
}).describe("ThreadMember represents a thread participant\nwith optional type-specific settings.")).optional().describe("Detailed member information."),
|
|
36720
|
+
read_states: v.array(v.object({
|
|
36721
|
+
delivered_up_to_seq: v.string().optional(),
|
|
36722
|
+
member: v.object({
|
|
36723
|
+
contact: v.object({
|
|
36724
|
+
app_id: v.string().optional().describe("Identifier of the specific integration app or bot."),
|
|
36725
|
+
created_at: v.string().optional().describe("Record creation timestamp (Unix Epoch in milliseconds)."),
|
|
36726
|
+
is_bot: v.boolean().optional().describe("Represents if usere is real person or automatic script."),
|
|
36727
|
+
iss: v.string().optional().describe("Provider-specific unique identifier (Issuer ID)."),
|
|
36728
|
+
metadata: v.record(v.string(), v.string()).optional().describe("Additional dynamic attributes provided by the messenger."),
|
|
36729
|
+
name: v.string().optional().describe("Display name of the contact."),
|
|
36730
|
+
sub: v.string().optional().describe("Associated internal system subject/identifier."),
|
|
36731
|
+
type: v.string().optional().describe("Channel type (e.g., 'webchat', 'telegram')."),
|
|
36732
|
+
updated_at: v.string().optional().describe("Last record update timestamp (Unix Epoch in milliseconds)."),
|
|
36733
|
+
username: v.string().optional().describe("Technical username or handle."),
|
|
36734
|
+
vias: v.array(v.object({
|
|
36735
|
+
contact_id: v.string().optional(),
|
|
36736
|
+
created_at: v.string().optional(),
|
|
36737
|
+
disable: v.boolean().optional(),
|
|
36738
|
+
disable_reason: v.string().optional(),
|
|
36739
|
+
metadata: v.looseObject({}).optional(),
|
|
36740
|
+
updated_at: v.string().optional(),
|
|
36741
|
+
via: v.string().optional()
|
|
36742
|
+
})).optional()
|
|
36743
|
+
}).optional().describe("Contact represents an external messaging identity."),
|
|
36744
|
+
id: v.string().optional(),
|
|
36745
|
+
permissions: v.object({
|
|
36746
|
+
can_add_members: v.boolean().optional(),
|
|
36747
|
+
can_change_members_permissions: v.boolean().optional(),
|
|
36748
|
+
can_change_thread_info: v.boolean().optional(),
|
|
36749
|
+
can_delete_messages: v.boolean().optional(),
|
|
36750
|
+
can_remove_members: v.boolean().optional(),
|
|
36751
|
+
can_send_messages: v.boolean().optional(),
|
|
36752
|
+
created_at: v.string().optional(),
|
|
36753
|
+
id: v.string().optional(),
|
|
36754
|
+
member_id: v.string().optional(),
|
|
36755
|
+
updated_at: v.string().optional()
|
|
36756
|
+
}).optional(),
|
|
36757
|
+
role: v.enum([
|
|
36758
|
+
"ROLE_UNSPECIFIED",
|
|
36759
|
+
"ROLE_MEMBER",
|
|
36760
|
+
"ROLE_ADMIN",
|
|
36761
|
+
"ROLE_OWNER",
|
|
36762
|
+
"ROLE_SUPERVISOR"
|
|
36763
|
+
]).default("ROLE_UNSPECIFIED")
|
|
36764
|
+
}).optional().describe("The member, in the same shape as history's sender; set by GetUpdates."),
|
|
36765
|
+
member_id: v.string().optional(),
|
|
36766
|
+
read_up_to_seq: v.string().optional()
|
|
36767
|
+
}).describe("MemberReadState is one member's delivery/read horizon in a thread, as\nper-thread message seq (0 = nothing reached that state yet).")).optional().describe("Per-member read horizons (snapshot, matches GetUpdates model).\nClient derives inbox/outbox watermarks: own_last_read = inbox; MIN over others = outbox."),
|
|
36542
36768
|
settings: v.object({
|
|
36543
36769
|
created_at: v.string().optional().describe("Creation timestamp (Unix time, milliseconds)."),
|
|
36544
36770
|
domain_id: v.int().optional().describe("Domain identifier."),
|
|
@@ -36555,6 +36781,7 @@ v.object({
|
|
|
36555
36781
|
]).default("UNKNOWN").describe("Type of the thread."),
|
|
36556
36782
|
unread_count: v.int().optional().describe("Number of unread messages in this thread for the calling participant.\nCounts content messages not yet read; the caller's own messages and\nsystem messages are excluded."),
|
|
36557
36783
|
updated_at: v.string().optional().describe("Last update timestamp (Unix time, milliseconds)."),
|
|
36784
|
+
updates_cursor: v.string().optional().describe("GetUpdates cursor read before this thread (set by Get; Search carries it on the response)."),
|
|
36558
36785
|
variables: v.object({
|
|
36559
36786
|
thread_id: v.string().optional().describe("Unique identifier for the thread."),
|
|
36560
36787
|
variables: v.record(v.string(), v.object({
|
|
@@ -36584,7 +36811,8 @@ v.object({
|
|
|
36584
36811
|
}).describe("VariableEntry represents a single variable value\nalong with metadata about who and when it was set.")).optional().describe("Key-value map of variables.\nKey is the variable name, value contains data and metadata.")
|
|
36585
36812
|
}).optional().describe("Optional variables associated with the thread.")
|
|
36586
36813
|
}).describe("Thread represents a thread (aka chat or conversation) entity.")).optional().describe("List of threads matching the search criteria."),
|
|
36587
|
-
next: v.boolean().optional().describe("Indicates whether there is a next page available.")
|
|
36814
|
+
next: v.boolean().optional().describe("Indicates whether there is a next page available."),
|
|
36815
|
+
updates_cursor: v.string().optional().describe("GetUpdates cursor read before this page: every later change comes from GetUpdates(updates_cursor).")
|
|
36588
36816
|
}).describe("SearchThreadResponse contains the list of threads\nand pagination metadata."), v.object({ direct: v.object({ member: v.object({
|
|
36589
36817
|
chat_name: v.string().optional().describe("chat_name is the name external clients see instead of the real one."),
|
|
36590
36818
|
iss: v.string().optional(),
|
|
@@ -36647,13 +36875,6 @@ v.object({
|
|
|
36647
36875
|
"ROLE_SUPERVISOR"
|
|
36648
36876
|
]).default("ROLE_UNSPECIFIED")
|
|
36649
36877
|
}).optional().describe("Member who deleted the message, enriched exactly like sender; unset while\nthe message is live."),
|
|
36650
|
-
delivery_status: v.enum([
|
|
36651
|
-
"MESSAGE_DELIVERY_STATUS_UNSPECIFIED",
|
|
36652
|
-
"MESSAGE_DELIVERY_STATUS_SENT",
|
|
36653
|
-
"MESSAGE_DELIVERY_STATUS_DELIVERED",
|
|
36654
|
-
"MESSAGE_DELIVERY_STATUS_READ",
|
|
36655
|
-
"MESSAGE_DELIVERY_STATUS_FAILED"
|
|
36656
|
-
]).default("MESSAGE_DELIVERY_STATUS_UNSPECIFIED").describe("Aggregated delivery status across recipients: FAILED when every\nrecipient failed, otherwise the minimal status among non-failed ones.\nUNSPECIFIED for messages without per-recipient tracking (historical)."),
|
|
36657
36878
|
documents: v.array(v.object({
|
|
36658
36879
|
created_at: v.string().optional().describe("Creation timestamp (Unix time, milliseconds)."),
|
|
36659
36880
|
file_id: v.string().optional().describe("File storage identifier."),
|
|
@@ -36901,21 +37122,6 @@ v.object({
|
|
|
36901
37122
|
]).default("ROLE_UNSPECIFIED")
|
|
36902
37123
|
}).optional().describe("Sender user aggregated information."),
|
|
36903
37124
|
seq: v.string().optional().describe("Per-thread monotonic sequence number, assigned on message creation."),
|
|
36904
|
-
statuses: v.array(v.object({
|
|
36905
|
-
delivered_at: v.string().optional().describe("Unix time in milliseconds; zero when not reached."),
|
|
36906
|
-
error: v.string().optional().describe("JSON-encoded provider error details for FAILED."),
|
|
36907
|
-
failed_at: v.string().optional(),
|
|
36908
|
-
member_id: v.string().optional().describe("Recipient contact id."),
|
|
36909
|
-
read_at: v.string().optional(),
|
|
36910
|
-
status: v.enum([
|
|
36911
|
-
"MESSAGE_DELIVERY_STATUS_UNSPECIFIED",
|
|
36912
|
-
"MESSAGE_DELIVERY_STATUS_SENT",
|
|
36913
|
-
"MESSAGE_DELIVERY_STATUS_DELIVERED",
|
|
36914
|
-
"MESSAGE_DELIVERY_STATUS_READ",
|
|
36915
|
-
"MESSAGE_DELIVERY_STATUS_FAILED"
|
|
36916
|
-
]).default("MESSAGE_DELIVERY_STATUS_UNSPECIFIED").describe("MessageDeliveryStatus is a per-recipient delivery state of a message.\nTransitions are monotonic: SENT -> DELIVERED -> READ.\nFAILED is terminal but may be superseded by a later DELIVERED (retry).\n\n - MESSAGE_DELIVERY_STATUS_SENT: Accepted by the system and queued for delivery.\n - MESSAGE_DELIVERY_STATUS_DELIVERED: Reached the recipient (stream ACK, push, provider receipt, bot dispatch).\n - MESSAGE_DELIVERY_STATUS_READ: Read by the recipient. Not applicable to bots.\n - MESSAGE_DELIVERY_STATUS_FAILED: Delivery failed (provider rejected, invalid contact, channel restriction)."),
|
|
36917
|
-
via: v.string().optional().describe("Confirmation source: ws|push|provider|bot.")
|
|
36918
|
-
}).describe("MessageRecipientStatus is a per-recipient delivery state of a message.")).optional().describe("Per-recipient delivery details."),
|
|
36919
37125
|
system: v.object({
|
|
36920
37126
|
message_id: v.string().optional().describe("ID of message for which system messages is binded."),
|
|
36921
37127
|
metadata: v.looseObject({}).optional().describe("Represents additional metadata binded into system message."),
|
|
@@ -36967,6 +37173,54 @@ v.object({
|
|
|
36967
37173
|
"ROLE_SUPERVISOR"
|
|
36968
37174
|
]).default("ROLE_UNSPECIFIED")
|
|
36969
37175
|
}).describe("ThreadMember represents a thread participant\nwith optional type-specific settings.")).optional().describe("Detailed member information."),
|
|
37176
|
+
read_states: v.array(v.object({
|
|
37177
|
+
delivered_up_to_seq: v.string().optional(),
|
|
37178
|
+
member: v.object({
|
|
37179
|
+
contact: v.object({
|
|
37180
|
+
app_id: v.string().optional().describe("Identifier of the specific integration app or bot."),
|
|
37181
|
+
created_at: v.string().optional().describe("Record creation timestamp (Unix Epoch in milliseconds)."),
|
|
37182
|
+
is_bot: v.boolean().optional().describe("Represents if usere is real person or automatic script."),
|
|
37183
|
+
iss: v.string().optional().describe("Provider-specific unique identifier (Issuer ID)."),
|
|
37184
|
+
metadata: v.record(v.string(), v.string()).optional().describe("Additional dynamic attributes provided by the messenger."),
|
|
37185
|
+
name: v.string().optional().describe("Display name of the contact."),
|
|
37186
|
+
sub: v.string().optional().describe("Associated internal system subject/identifier."),
|
|
37187
|
+
type: v.string().optional().describe("Channel type (e.g., 'webchat', 'telegram')."),
|
|
37188
|
+
updated_at: v.string().optional().describe("Last record update timestamp (Unix Epoch in milliseconds)."),
|
|
37189
|
+
username: v.string().optional().describe("Technical username or handle."),
|
|
37190
|
+
vias: v.array(v.object({
|
|
37191
|
+
contact_id: v.string().optional(),
|
|
37192
|
+
created_at: v.string().optional(),
|
|
37193
|
+
disable: v.boolean().optional(),
|
|
37194
|
+
disable_reason: v.string().optional(),
|
|
37195
|
+
metadata: v.looseObject({}).optional(),
|
|
37196
|
+
updated_at: v.string().optional(),
|
|
37197
|
+
via: v.string().optional()
|
|
37198
|
+
})).optional()
|
|
37199
|
+
}).optional().describe("Contact represents an external messaging identity."),
|
|
37200
|
+
id: v.string().optional(),
|
|
37201
|
+
permissions: v.object({
|
|
37202
|
+
can_add_members: v.boolean().optional(),
|
|
37203
|
+
can_change_members_permissions: v.boolean().optional(),
|
|
37204
|
+
can_change_thread_info: v.boolean().optional(),
|
|
37205
|
+
can_delete_messages: v.boolean().optional(),
|
|
37206
|
+
can_remove_members: v.boolean().optional(),
|
|
37207
|
+
can_send_messages: v.boolean().optional(),
|
|
37208
|
+
created_at: v.string().optional(),
|
|
37209
|
+
id: v.string().optional(),
|
|
37210
|
+
member_id: v.string().optional(),
|
|
37211
|
+
updated_at: v.string().optional()
|
|
37212
|
+
}).optional(),
|
|
37213
|
+
role: v.enum([
|
|
37214
|
+
"ROLE_UNSPECIFIED",
|
|
37215
|
+
"ROLE_MEMBER",
|
|
37216
|
+
"ROLE_ADMIN",
|
|
37217
|
+
"ROLE_OWNER",
|
|
37218
|
+
"ROLE_SUPERVISOR"
|
|
37219
|
+
]).default("ROLE_UNSPECIFIED")
|
|
37220
|
+
}).optional().describe("The member, in the same shape as history's sender; set by GetUpdates."),
|
|
37221
|
+
member_id: v.string().optional(),
|
|
37222
|
+
read_up_to_seq: v.string().optional()
|
|
37223
|
+
}).describe("MemberReadState is one member's delivery/read horizon in a thread, as\nper-thread message seq (0 = nothing reached that state yet).")).optional().describe("Per-member read horizons (snapshot, matches GetUpdates model).\nClient derives inbox/outbox watermarks: own_last_read = inbox; MIN over others = outbox."),
|
|
36970
37224
|
settings: v.object({
|
|
36971
37225
|
created_at: v.string().optional().describe("Creation timestamp (Unix time, milliseconds)."),
|
|
36972
37226
|
domain_id: v.int().optional().describe("Domain identifier."),
|
|
@@ -36983,6 +37237,7 @@ v.object({
|
|
|
36983
37237
|
]).default("UNKNOWN").describe("Type of the thread."),
|
|
36984
37238
|
unread_count: v.int().optional().describe("Number of unread messages in this thread for the calling participant.\nCounts content messages not yet read; the caller's own messages and\nsystem messages are excluded."),
|
|
36985
37239
|
updated_at: v.string().optional().describe("Last update timestamp (Unix time, milliseconds)."),
|
|
37240
|
+
updates_cursor: v.string().optional().describe("GetUpdates cursor read before this thread (set by Get; Search carries it on the response)."),
|
|
36986
37241
|
variables: v.object({
|
|
36987
37242
|
thread_id: v.string().optional().describe("Unique identifier for the thread."),
|
|
36988
37243
|
variables: v.record(v.string(), v.object({
|
|
@@ -37080,13 +37335,6 @@ v.object({
|
|
|
37080
37335
|
"ROLE_SUPERVISOR"
|
|
37081
37336
|
]).default("ROLE_UNSPECIFIED")
|
|
37082
37337
|
}).optional().describe("Member who deleted the message, enriched exactly like sender; unset while\nthe message is live."),
|
|
37083
|
-
delivery_status: v.enum([
|
|
37084
|
-
"MESSAGE_DELIVERY_STATUS_UNSPECIFIED",
|
|
37085
|
-
"MESSAGE_DELIVERY_STATUS_SENT",
|
|
37086
|
-
"MESSAGE_DELIVERY_STATUS_DELIVERED",
|
|
37087
|
-
"MESSAGE_DELIVERY_STATUS_READ",
|
|
37088
|
-
"MESSAGE_DELIVERY_STATUS_FAILED"
|
|
37089
|
-
]).default("MESSAGE_DELIVERY_STATUS_UNSPECIFIED").describe("Aggregated delivery status across recipients: FAILED when every\nrecipient failed, otherwise the minimal status among non-failed ones.\nUNSPECIFIED for messages without per-recipient tracking (historical)."),
|
|
37090
37338
|
documents: v.array(v.object({
|
|
37091
37339
|
created_at: v.string().optional().describe("Creation timestamp (Unix time, milliseconds)."),
|
|
37092
37340
|
file_id: v.string().optional().describe("File storage identifier."),
|
|
@@ -37334,21 +37582,6 @@ v.object({
|
|
|
37334
37582
|
]).default("ROLE_UNSPECIFIED")
|
|
37335
37583
|
}).optional().describe("Sender user aggregated information."),
|
|
37336
37584
|
seq: v.string().optional().describe("Per-thread monotonic sequence number, assigned on message creation."),
|
|
37337
|
-
statuses: v.array(v.object({
|
|
37338
|
-
delivered_at: v.string().optional().describe("Unix time in milliseconds; zero when not reached."),
|
|
37339
|
-
error: v.string().optional().describe("JSON-encoded provider error details for FAILED."),
|
|
37340
|
-
failed_at: v.string().optional(),
|
|
37341
|
-
member_id: v.string().optional().describe("Recipient contact id."),
|
|
37342
|
-
read_at: v.string().optional(),
|
|
37343
|
-
status: v.enum([
|
|
37344
|
-
"MESSAGE_DELIVERY_STATUS_UNSPECIFIED",
|
|
37345
|
-
"MESSAGE_DELIVERY_STATUS_SENT",
|
|
37346
|
-
"MESSAGE_DELIVERY_STATUS_DELIVERED",
|
|
37347
|
-
"MESSAGE_DELIVERY_STATUS_READ",
|
|
37348
|
-
"MESSAGE_DELIVERY_STATUS_FAILED"
|
|
37349
|
-
]).default("MESSAGE_DELIVERY_STATUS_UNSPECIFIED").describe("MessageDeliveryStatus is a per-recipient delivery state of a message.\nTransitions are monotonic: SENT -> DELIVERED -> READ.\nFAILED is terminal but may be superseded by a later DELIVERED (retry).\n\n - MESSAGE_DELIVERY_STATUS_SENT: Accepted by the system and queued for delivery.\n - MESSAGE_DELIVERY_STATUS_DELIVERED: Reached the recipient (stream ACK, push, provider receipt, bot dispatch).\n - MESSAGE_DELIVERY_STATUS_READ: Read by the recipient. Not applicable to bots.\n - MESSAGE_DELIVERY_STATUS_FAILED: Delivery failed (provider rejected, invalid contact, channel restriction)."),
|
|
37350
|
-
via: v.string().optional().describe("Confirmation source: ws|push|provider|bot.")
|
|
37351
|
-
}).describe("MessageRecipientStatus is a per-recipient delivery state of a message.")).optional().describe("Per-recipient delivery details."),
|
|
37352
37585
|
system: v.object({
|
|
37353
37586
|
message_id: v.string().optional().describe("ID of message for which system messages is binded."),
|
|
37354
37587
|
metadata: v.looseObject({}).optional().describe("Represents additional metadata binded into system message."),
|
|
@@ -37400,6 +37633,54 @@ v.object({
|
|
|
37400
37633
|
"ROLE_SUPERVISOR"
|
|
37401
37634
|
]).default("ROLE_UNSPECIFIED")
|
|
37402
37635
|
}).describe("ThreadMember represents a thread participant\nwith optional type-specific settings.")).optional().describe("Detailed member information."),
|
|
37636
|
+
read_states: v.array(v.object({
|
|
37637
|
+
delivered_up_to_seq: v.string().optional(),
|
|
37638
|
+
member: v.object({
|
|
37639
|
+
contact: v.object({
|
|
37640
|
+
app_id: v.string().optional().describe("Identifier of the specific integration app or bot."),
|
|
37641
|
+
created_at: v.string().optional().describe("Record creation timestamp (Unix Epoch in milliseconds)."),
|
|
37642
|
+
is_bot: v.boolean().optional().describe("Represents if usere is real person or automatic script."),
|
|
37643
|
+
iss: v.string().optional().describe("Provider-specific unique identifier (Issuer ID)."),
|
|
37644
|
+
metadata: v.record(v.string(), v.string()).optional().describe("Additional dynamic attributes provided by the messenger."),
|
|
37645
|
+
name: v.string().optional().describe("Display name of the contact."),
|
|
37646
|
+
sub: v.string().optional().describe("Associated internal system subject/identifier."),
|
|
37647
|
+
type: v.string().optional().describe("Channel type (e.g., 'webchat', 'telegram')."),
|
|
37648
|
+
updated_at: v.string().optional().describe("Last record update timestamp (Unix Epoch in milliseconds)."),
|
|
37649
|
+
username: v.string().optional().describe("Technical username or handle."),
|
|
37650
|
+
vias: v.array(v.object({
|
|
37651
|
+
contact_id: v.string().optional(),
|
|
37652
|
+
created_at: v.string().optional(),
|
|
37653
|
+
disable: v.boolean().optional(),
|
|
37654
|
+
disable_reason: v.string().optional(),
|
|
37655
|
+
metadata: v.looseObject({}).optional(),
|
|
37656
|
+
updated_at: v.string().optional(),
|
|
37657
|
+
via: v.string().optional()
|
|
37658
|
+
})).optional()
|
|
37659
|
+
}).optional().describe("Contact represents an external messaging identity."),
|
|
37660
|
+
id: v.string().optional(),
|
|
37661
|
+
permissions: v.object({
|
|
37662
|
+
can_add_members: v.boolean().optional(),
|
|
37663
|
+
can_change_members_permissions: v.boolean().optional(),
|
|
37664
|
+
can_change_thread_info: v.boolean().optional(),
|
|
37665
|
+
can_delete_messages: v.boolean().optional(),
|
|
37666
|
+
can_remove_members: v.boolean().optional(),
|
|
37667
|
+
can_send_messages: v.boolean().optional(),
|
|
37668
|
+
created_at: v.string().optional(),
|
|
37669
|
+
id: v.string().optional(),
|
|
37670
|
+
member_id: v.string().optional(),
|
|
37671
|
+
updated_at: v.string().optional()
|
|
37672
|
+
}).optional(),
|
|
37673
|
+
role: v.enum([
|
|
37674
|
+
"ROLE_UNSPECIFIED",
|
|
37675
|
+
"ROLE_MEMBER",
|
|
37676
|
+
"ROLE_ADMIN",
|
|
37677
|
+
"ROLE_OWNER",
|
|
37678
|
+
"ROLE_SUPERVISOR"
|
|
37679
|
+
]).default("ROLE_UNSPECIFIED")
|
|
37680
|
+
}).optional().describe("The member, in the same shape as history's sender; set by GetUpdates."),
|
|
37681
|
+
member_id: v.string().optional(),
|
|
37682
|
+
read_up_to_seq: v.string().optional()
|
|
37683
|
+
}).describe("MemberReadState is one member's delivery/read horizon in a thread, as\nper-thread message seq (0 = nothing reached that state yet).")).optional().describe("Per-member read horizons (snapshot, matches GetUpdates model).\nClient derives inbox/outbox watermarks: own_last_read = inbox; MIN over others = outbox."),
|
|
37403
37684
|
settings: v.object({
|
|
37404
37685
|
created_at: v.string().optional().describe("Creation timestamp (Unix time, milliseconds)."),
|
|
37405
37686
|
domain_id: v.int().optional().describe("Domain identifier."),
|
|
@@ -37416,6 +37697,7 @@ v.object({
|
|
|
37416
37697
|
]).default("UNKNOWN").describe("Type of the thread."),
|
|
37417
37698
|
unread_count: v.int().optional().describe("Number of unread messages in this thread for the calling participant.\nCounts content messages not yet read; the caller's own messages and\nsystem messages are excluded."),
|
|
37418
37699
|
updated_at: v.string().optional().describe("Last update timestamp (Unix time, milliseconds)."),
|
|
37700
|
+
updates_cursor: v.string().optional().describe("GetUpdates cursor read before this thread (set by Get; Search carries it on the response)."),
|
|
37419
37701
|
variables: v.object({
|
|
37420
37702
|
thread_id: v.string().optional().describe("Unique identifier for the thread."),
|
|
37421
37703
|
variables: v.record(v.string(), v.object({
|
|
@@ -37506,13 +37788,6 @@ v.object({
|
|
|
37506
37788
|
"ROLE_SUPERVISOR"
|
|
37507
37789
|
]).default("ROLE_UNSPECIFIED")
|
|
37508
37790
|
}).optional().describe("Member who deleted the message, enriched exactly like sender; unset while\nthe message is live."),
|
|
37509
|
-
delivery_status: v.enum([
|
|
37510
|
-
"MESSAGE_DELIVERY_STATUS_UNSPECIFIED",
|
|
37511
|
-
"MESSAGE_DELIVERY_STATUS_SENT",
|
|
37512
|
-
"MESSAGE_DELIVERY_STATUS_DELIVERED",
|
|
37513
|
-
"MESSAGE_DELIVERY_STATUS_READ",
|
|
37514
|
-
"MESSAGE_DELIVERY_STATUS_FAILED"
|
|
37515
|
-
]).default("MESSAGE_DELIVERY_STATUS_UNSPECIFIED").describe("Aggregated delivery status across recipients: FAILED when every\nrecipient failed, otherwise the minimal status among non-failed ones.\nUNSPECIFIED for messages without per-recipient tracking (historical)."),
|
|
37516
37791
|
documents: v.array(v.object({
|
|
37517
37792
|
created_at: v.string().optional().describe("Creation timestamp (Unix time, milliseconds)."),
|
|
37518
37793
|
file_id: v.string().optional().describe("File storage identifier."),
|
|
@@ -37760,21 +38035,6 @@ v.object({
|
|
|
37760
38035
|
]).default("ROLE_UNSPECIFIED")
|
|
37761
38036
|
}).optional().describe("Sender user aggregated information."),
|
|
37762
38037
|
seq: v.string().optional().describe("Per-thread monotonic sequence number, assigned on message creation."),
|
|
37763
|
-
statuses: v.array(v.object({
|
|
37764
|
-
delivered_at: v.string().optional().describe("Unix time in milliseconds; zero when not reached."),
|
|
37765
|
-
error: v.string().optional().describe("JSON-encoded provider error details for FAILED."),
|
|
37766
|
-
failed_at: v.string().optional(),
|
|
37767
|
-
member_id: v.string().optional().describe("Recipient contact id."),
|
|
37768
|
-
read_at: v.string().optional(),
|
|
37769
|
-
status: v.enum([
|
|
37770
|
-
"MESSAGE_DELIVERY_STATUS_UNSPECIFIED",
|
|
37771
|
-
"MESSAGE_DELIVERY_STATUS_SENT",
|
|
37772
|
-
"MESSAGE_DELIVERY_STATUS_DELIVERED",
|
|
37773
|
-
"MESSAGE_DELIVERY_STATUS_READ",
|
|
37774
|
-
"MESSAGE_DELIVERY_STATUS_FAILED"
|
|
37775
|
-
]).default("MESSAGE_DELIVERY_STATUS_UNSPECIFIED").describe("MessageDeliveryStatus is a per-recipient delivery state of a message.\nTransitions are monotonic: SENT -> DELIVERED -> READ.\nFAILED is terminal but may be superseded by a later DELIVERED (retry).\n\n - MESSAGE_DELIVERY_STATUS_SENT: Accepted by the system and queued for delivery.\n - MESSAGE_DELIVERY_STATUS_DELIVERED: Reached the recipient (stream ACK, push, provider receipt, bot dispatch).\n - MESSAGE_DELIVERY_STATUS_READ: Read by the recipient. Not applicable to bots.\n - MESSAGE_DELIVERY_STATUS_FAILED: Delivery failed (provider rejected, invalid contact, channel restriction)."),
|
|
37776
|
-
via: v.string().optional().describe("Confirmation source: ws|push|provider|bot.")
|
|
37777
|
-
}).describe("MessageRecipientStatus is a per-recipient delivery state of a message.")).optional().describe("Per-recipient delivery details."),
|
|
37778
38038
|
system: v.object({
|
|
37779
38039
|
message_id: v.string().optional().describe("ID of message for which system messages is binded."),
|
|
37780
38040
|
metadata: v.looseObject({}).optional().describe("Represents additional metadata binded into system message."),
|
|
@@ -37826,6 +38086,54 @@ v.object({
|
|
|
37826
38086
|
"ROLE_SUPERVISOR"
|
|
37827
38087
|
]).default("ROLE_UNSPECIFIED")
|
|
37828
38088
|
}).describe("ThreadMember represents a thread participant\nwith optional type-specific settings.")).optional().describe("Detailed member information."),
|
|
38089
|
+
read_states: v.array(v.object({
|
|
38090
|
+
delivered_up_to_seq: v.string().optional(),
|
|
38091
|
+
member: v.object({
|
|
38092
|
+
contact: v.object({
|
|
38093
|
+
app_id: v.string().optional().describe("Identifier of the specific integration app or bot."),
|
|
38094
|
+
created_at: v.string().optional().describe("Record creation timestamp (Unix Epoch in milliseconds)."),
|
|
38095
|
+
is_bot: v.boolean().optional().describe("Represents if usere is real person or automatic script."),
|
|
38096
|
+
iss: v.string().optional().describe("Provider-specific unique identifier (Issuer ID)."),
|
|
38097
|
+
metadata: v.record(v.string(), v.string()).optional().describe("Additional dynamic attributes provided by the messenger."),
|
|
38098
|
+
name: v.string().optional().describe("Display name of the contact."),
|
|
38099
|
+
sub: v.string().optional().describe("Associated internal system subject/identifier."),
|
|
38100
|
+
type: v.string().optional().describe("Channel type (e.g., 'webchat', 'telegram')."),
|
|
38101
|
+
updated_at: v.string().optional().describe("Last record update timestamp (Unix Epoch in milliseconds)."),
|
|
38102
|
+
username: v.string().optional().describe("Technical username or handle."),
|
|
38103
|
+
vias: v.array(v.object({
|
|
38104
|
+
contact_id: v.string().optional(),
|
|
38105
|
+
created_at: v.string().optional(),
|
|
38106
|
+
disable: v.boolean().optional(),
|
|
38107
|
+
disable_reason: v.string().optional(),
|
|
38108
|
+
metadata: v.looseObject({}).optional(),
|
|
38109
|
+
updated_at: v.string().optional(),
|
|
38110
|
+
via: v.string().optional()
|
|
38111
|
+
})).optional()
|
|
38112
|
+
}).optional().describe("Contact represents an external messaging identity."),
|
|
38113
|
+
id: v.string().optional(),
|
|
38114
|
+
permissions: v.object({
|
|
38115
|
+
can_add_members: v.boolean().optional(),
|
|
38116
|
+
can_change_members_permissions: v.boolean().optional(),
|
|
38117
|
+
can_change_thread_info: v.boolean().optional(),
|
|
38118
|
+
can_delete_messages: v.boolean().optional(),
|
|
38119
|
+
can_remove_members: v.boolean().optional(),
|
|
38120
|
+
can_send_messages: v.boolean().optional(),
|
|
38121
|
+
created_at: v.string().optional(),
|
|
38122
|
+
id: v.string().optional(),
|
|
38123
|
+
member_id: v.string().optional(),
|
|
38124
|
+
updated_at: v.string().optional()
|
|
38125
|
+
}).optional(),
|
|
38126
|
+
role: v.enum([
|
|
38127
|
+
"ROLE_UNSPECIFIED",
|
|
38128
|
+
"ROLE_MEMBER",
|
|
38129
|
+
"ROLE_ADMIN",
|
|
38130
|
+
"ROLE_OWNER",
|
|
38131
|
+
"ROLE_SUPERVISOR"
|
|
38132
|
+
]).default("ROLE_UNSPECIFIED")
|
|
38133
|
+
}).optional().describe("The member, in the same shape as history's sender; set by GetUpdates."),
|
|
38134
|
+
member_id: v.string().optional(),
|
|
38135
|
+
read_up_to_seq: v.string().optional()
|
|
38136
|
+
}).describe("MemberReadState is one member's delivery/read horizon in a thread, as\nper-thread message seq (0 = nothing reached that state yet).")).optional().describe("Per-member read horizons (snapshot, matches GetUpdates model).\nClient derives inbox/outbox watermarks: own_last_read = inbox; MIN over others = outbox."),
|
|
37829
38137
|
settings: v.object({
|
|
37830
38138
|
created_at: v.string().optional().describe("Creation timestamp (Unix time, milliseconds)."),
|
|
37831
38139
|
domain_id: v.int().optional().describe("Domain identifier."),
|
|
@@ -37842,6 +38150,7 @@ v.object({
|
|
|
37842
38150
|
]).default("UNKNOWN").describe("Type of the thread."),
|
|
37843
38151
|
unread_count: v.int().optional().describe("Number of unread messages in this thread for the calling participant.\nCounts content messages not yet read; the caller's own messages and\nsystem messages are excluded."),
|
|
37844
38152
|
updated_at: v.string().optional().describe("Last update timestamp (Unix time, milliseconds)."),
|
|
38153
|
+
updates_cursor: v.string().optional().describe("GetUpdates cursor read before this thread (set by Get; Search carries it on the response)."),
|
|
37845
38154
|
variables: v.object({
|
|
37846
38155
|
thread_id: v.string().optional().describe("Unique identifier for the thread."),
|
|
37847
38156
|
variables: v.record(v.string(), v.object({
|
|
@@ -38150,6 +38459,1029 @@ v.object({
|
|
|
38150
38459
|
id: v.string().optional(),
|
|
38151
38460
|
tag: v.string().optional(),
|
|
38152
38461
|
thread_id: v.string().optional()
|
|
38462
|
+
}), v.object({ cursor: v.string().optional().describe("From the previous response; empty on the first sync.") }), v.object({
|
|
38463
|
+
cursor: v.string().optional().describe("Pass back as cursor on the next call."),
|
|
38464
|
+
resync: v.boolean().optional().describe("Empty cursor, unusable cursor or more than 1000 changes: reload the thread list,\nthen continue from cursor."),
|
|
38465
|
+
threads: v.array(v.object({
|
|
38466
|
+
deleted_message_ids: v.array(v.string()).optional(),
|
|
38467
|
+
dialog: v.object({
|
|
38468
|
+
created_at: v.string().optional().describe("Thread creation timestamp (Unix time, milliseconds)."),
|
|
38469
|
+
description: v.string().optional().describe("Optional thread description."),
|
|
38470
|
+
id: v.string().optional().describe("Unique thread identifier."),
|
|
38471
|
+
last_msg: v.object({
|
|
38472
|
+
body: v.string().optional().describe("Message body content."),
|
|
38473
|
+
contact: v.object({
|
|
38474
|
+
email: v.string().optional(),
|
|
38475
|
+
name: v.string().optional(),
|
|
38476
|
+
phone: v.string().optional()
|
|
38477
|
+
}).optional(),
|
|
38478
|
+
created_at: v.string().optional().describe("Message creation timestamp (Unix time, milliseconds)."),
|
|
38479
|
+
deleted: v.boolean().optional().describe("True when the message was deleted by its author. Every content field\n(body, attachments, contact, location, interactive, metadata) is cleared,\nso clients should render a tombstone."),
|
|
38480
|
+
deleted_at: v.string().optional().describe("Unix time in milliseconds when the message was deleted."),
|
|
38481
|
+
deleted_by: v.object({
|
|
38482
|
+
contact: v.object({
|
|
38483
|
+
app_id: v.string().optional().describe("Identifier of the specific integration app or bot."),
|
|
38484
|
+
created_at: v.string().optional().describe("Record creation timestamp (Unix Epoch in milliseconds)."),
|
|
38485
|
+
is_bot: v.boolean().optional().describe("Represents if usere is real person or automatic script."),
|
|
38486
|
+
iss: v.string().optional().describe("Provider-specific unique identifier (Issuer ID)."),
|
|
38487
|
+
metadata: v.record(v.string(), v.string()).optional().describe("Additional dynamic attributes provided by the messenger."),
|
|
38488
|
+
name: v.string().optional().describe("Display name of the contact."),
|
|
38489
|
+
sub: v.string().optional().describe("Associated internal system subject/identifier."),
|
|
38490
|
+
type: v.string().optional().describe("Channel type (e.g., 'webchat', 'telegram')."),
|
|
38491
|
+
updated_at: v.string().optional().describe("Last record update timestamp (Unix Epoch in milliseconds)."),
|
|
38492
|
+
username: v.string().optional().describe("Technical username or handle."),
|
|
38493
|
+
vias: v.array(v.object({
|
|
38494
|
+
contact_id: v.string().optional(),
|
|
38495
|
+
created_at: v.string().optional(),
|
|
38496
|
+
disable: v.boolean().optional(),
|
|
38497
|
+
disable_reason: v.string().optional(),
|
|
38498
|
+
metadata: v.looseObject({}).optional(),
|
|
38499
|
+
updated_at: v.string().optional(),
|
|
38500
|
+
via: v.string().optional()
|
|
38501
|
+
})).optional()
|
|
38502
|
+
}).optional().describe("Contact represents an external messaging identity."),
|
|
38503
|
+
id: v.string().optional(),
|
|
38504
|
+
permissions: v.object({
|
|
38505
|
+
can_add_members: v.boolean().optional(),
|
|
38506
|
+
can_change_members_permissions: v.boolean().optional(),
|
|
38507
|
+
can_change_thread_info: v.boolean().optional(),
|
|
38508
|
+
can_delete_messages: v.boolean().optional(),
|
|
38509
|
+
can_remove_members: v.boolean().optional(),
|
|
38510
|
+
can_send_messages: v.boolean().optional(),
|
|
38511
|
+
created_at: v.string().optional(),
|
|
38512
|
+
id: v.string().optional(),
|
|
38513
|
+
member_id: v.string().optional(),
|
|
38514
|
+
updated_at: v.string().optional()
|
|
38515
|
+
}).optional(),
|
|
38516
|
+
role: v.enum([
|
|
38517
|
+
"ROLE_UNSPECIFIED",
|
|
38518
|
+
"ROLE_MEMBER",
|
|
38519
|
+
"ROLE_ADMIN",
|
|
38520
|
+
"ROLE_OWNER",
|
|
38521
|
+
"ROLE_SUPERVISOR"
|
|
38522
|
+
]).default("ROLE_UNSPECIFIED")
|
|
38523
|
+
}).optional().describe("Member who deleted the message, enriched exactly like sender; unset while\nthe message is live."),
|
|
38524
|
+
documents: v.array(v.object({
|
|
38525
|
+
created_at: v.string().optional().describe("Creation timestamp (Unix time, milliseconds)."),
|
|
38526
|
+
file_id: v.string().optional().describe("File storage identifier."),
|
|
38527
|
+
id: v.string().optional().describe("Document identifier."),
|
|
38528
|
+
message_id: v.string().optional().describe("Identifier of the message this document belongs to."),
|
|
38529
|
+
mime: v.string().optional().describe("MIME type of the document."),
|
|
38530
|
+
name: v.string().optional().describe("Original file name."),
|
|
38531
|
+
size: v.string().optional().describe("File size in bytes."),
|
|
38532
|
+
url: v.string().optional().describe("Public signed URL for downloading the document.")
|
|
38533
|
+
}).describe("Document represents a file attachment\nassociated with a message.")).optional().describe("List of document attachments."),
|
|
38534
|
+
edited_at: v.string().optional().describe("Message last update timestamp (Unix time, milliseconds)."),
|
|
38535
|
+
forward_origin: v.object({
|
|
38536
|
+
kind: v.enum([
|
|
38537
|
+
"FORWARD_ORIGIN_KIND_UNSPECIFIED",
|
|
38538
|
+
"FORWARD_ORIGIN_KIND_INTERNAL",
|
|
38539
|
+
"FORWARD_ORIGIN_KIND_EXTERNAL_USER",
|
|
38540
|
+
"FORWARD_ORIGIN_KIND_EXTERNAL_HIDDEN_USER",
|
|
38541
|
+
"FORWARD_ORIGIN_KIND_EXTERNAL_CHAT"
|
|
38542
|
+
]).default("FORWARD_ORIGIN_KIND_UNSPECIFIED").describe("ForwardOriginKind tells the client how to label a forwarded message and\nwhether the origin points at anything addressable inside Webitel.\n\n - FORWARD_ORIGIN_KIND_INTERNAL: Forwarded inside Webitel: sender_id and source_message_id are set.\n - FORWARD_ORIGIN_KIND_EXTERNAL_USER: Forwarded into the chat from an external messenger, author named.\n - FORWARD_ORIGIN_KIND_EXTERNAL_HIDDEN_USER: Same, but the author chose to hide their account, so there is no name.\n - FORWARD_ORIGIN_KIND_EXTERNAL_CHAT: Origin is an external group or channel rather than a person."),
|
|
38543
|
+
original_sent_at: v.string().optional().describe("When the original message was sent, Unix time in milliseconds."),
|
|
38544
|
+
sender_id: v.string().optional().describe("Contact id of the original author. Empty unless kind is INTERNAL."),
|
|
38545
|
+
sender_name: v.string().optional().describe("Display name of the original author — the \"from whom\" label."),
|
|
38546
|
+
source_message_id: v.string().optional().describe("Source message this copy was made from. Empty unless kind is INTERNAL,\nand cleared if the source is later purged.")
|
|
38547
|
+
}).optional().describe("Set when this message is a forward. Never populated for a deleted\nmessage: the tombstone must not leak the origin name."),
|
|
38548
|
+
id: v.string().optional().describe("Unique message identifier."),
|
|
38549
|
+
images: v.array(v.object({
|
|
38550
|
+
created_at: v.string().optional().describe("Creation timestamp (Unix time, milliseconds)."),
|
|
38551
|
+
file_id: v.string().optional().describe("File storage identifier."),
|
|
38552
|
+
height: v.int().optional().describe("Image height in pixels."),
|
|
38553
|
+
id: v.string().optional().describe("Image identifier."),
|
|
38554
|
+
message_id: v.string().optional().describe("Identifier of the message this message belongs to."),
|
|
38555
|
+
mime: v.string().optional().describe("MIME type of the image."),
|
|
38556
|
+
url: v.string().optional().describe("Public signed URL for accessing the image."),
|
|
38557
|
+
width: v.int().optional().describe("Image width in pixels.")
|
|
38558
|
+
}).describe("Image represents an image attachment\nassociated with a message.")).optional().describe("List of image attachments."),
|
|
38559
|
+
interactive: v.object({
|
|
38560
|
+
documents: v.object({ documents: v.array(v.object({
|
|
38561
|
+
file_name: v.string().optional(),
|
|
38562
|
+
id: v.string().optional(),
|
|
38563
|
+
mime_type: v.string().optional(),
|
|
38564
|
+
size_bytes: v.string().optional(),
|
|
38565
|
+
url: v.string().optional()
|
|
38566
|
+
}).describe("Represents `Document` message with necessary fields\nto process it into frequently used `document`\nentity in messaging systems.")).optional().describe("Documents to be attached to the header of interactive message.\nMax allowed documents: 10.") }).optional().describe("Document attachments header."),
|
|
38567
|
+
images: v.object({ images: v.array(v.object({
|
|
38568
|
+
id: v.string().optional(),
|
|
38569
|
+
link: v.string().optional(),
|
|
38570
|
+
mime_type: v.string().optional(),
|
|
38571
|
+
name: v.string().optional()
|
|
38572
|
+
}).describe("Represents `Image` entity with\nnecessary fields.")).optional().describe("Images to be attached to the header of interactive message.\nMax allowed images: 10.") }).optional().describe("Images attachment header."),
|
|
38573
|
+
input_field_state: v.enum([
|
|
38574
|
+
"INPUT_FIELD_STATE_UNSPECIFIED",
|
|
38575
|
+
"INPUT_FIELD_STATE_REGULAR",
|
|
38576
|
+
"INPUT_FIELD_STATE_MINIMIZED",
|
|
38577
|
+
"INPUT_FIELD_STATE_HIDDEN"
|
|
38578
|
+
]).default("INPUT_FIELD_STATE_UNSPECIFIED").describe("Whether the recipient may still type while this menu is displayed."),
|
|
38579
|
+
list_reply: v.object({
|
|
38580
|
+
main_button_title: v.string().optional().describe("Title of the main button, that on-click show up list."),
|
|
38581
|
+
sections: v.array(v.object({
|
|
38582
|
+
buttons: v.array(v.object({
|
|
38583
|
+
callback: v.object({ data: v.string().optional().describe("Opaque data payload passed back to the server upon interaction.") }).optional().describe("Triggers a backend event (callback) with associated metadata."),
|
|
38584
|
+
id: v.string().optional().describe("Unique idempotent identifier for the button.\nUsed by the frontend to track state and prevent duplicate interactions."),
|
|
38585
|
+
label: v.string().optional().describe("The human-readable label displayed on the button."),
|
|
38586
|
+
metadata: v.looseObject({}).optional().describe("Extensible metadata for UI/UX styling (e.g., \"color\", \"theme\", \"size\").\nUsage: Allows for future-proofing without breaking schema changes."),
|
|
38587
|
+
request: v.object({ action: v.string().optional().describe("The specific action to be performed by the client application.") }).optional().describe("Requests sensitive information from the client (e.g., location or contact)."),
|
|
38588
|
+
url: v.object({ url: v.string().optional().describe("Must be a valid absolute URI (e.g., https://example.com).") }).optional().describe("Directs the user to an external web resource.")
|
|
38589
|
+
}).describe("Defines a single interactive element within the keyboard.\nEach button must have a unique identifier and a specific action type.")).optional().describe("Collection of buttons within this section.\nMinimum of 1 button is required to prevent empty sections."),
|
|
38590
|
+
section: v.string().optional().describe("The header text for this section. Must be concise and descriptive.")
|
|
38591
|
+
}).describe("Represents a row of buttons grouped under a specific logical section header.\nUseful for creating categorized menus or structured interactive interfaces.")).optional().describe("List with sections with buttons.")
|
|
38592
|
+
}).optional().describe("List reply with main list button text and sections with buttons."),
|
|
38593
|
+
markup: v.object({ rows: v.array(v.object({ buttons: v.array(v.object({
|
|
38594
|
+
callback: v.object({ data: v.string().optional().describe("Opaque data payload passed back to the server upon interaction.") }).optional().describe("Triggers a backend event (callback) with associated metadata."),
|
|
38595
|
+
id: v.string().optional().describe("Unique idempotent identifier for the button.\nUsed by the frontend to track state and prevent duplicate interactions."),
|
|
38596
|
+
label: v.string().optional().describe("The human-readable label displayed on the button."),
|
|
38597
|
+
metadata: v.looseObject({}).optional().describe("Extensible metadata for UI/UX styling (e.g., \"color\", \"theme\", \"size\").\nUsage: Allows for future-proofing without breaking schema changes."),
|
|
38598
|
+
request: v.object({ action: v.string().optional().describe("The specific action to be performed by the client application.") }).optional().describe("Requests sensitive information from the client (e.g., location or contact)."),
|
|
38599
|
+
url: v.object({ url: v.string().optional().describe("Must be a valid absolute URI (e.g., https://example.com).") }).optional().describe("Directs the user to an external web resource.")
|
|
38600
|
+
}).describe("Defines a single interactive element within the keyboard.\nEach button must have a unique identifier and a specific action type.")).optional().describe("Horizontal collection of buttons.\nCapped at 10 to ensure UI responsiveness and prevent overflow.") }).describe("A standard horizontal row of interactive buttons without a section header.")).optional().describe("Rows of buttons matrix.") }).optional().describe("Markup matrix with buttons."),
|
|
38601
|
+
placement: v.enum([
|
|
38602
|
+
"MENU_PLACEMENT_UNSPECIFIED",
|
|
38603
|
+
"MENU_PLACEMENT_INLINE",
|
|
38604
|
+
"MENU_PLACEMENT_PERSISTENT"
|
|
38605
|
+
]).default("MENU_PLACEMENT_UNSPECIFIED").describe("Where the menu is rendered. Channels that only support one placement ignore it."),
|
|
38606
|
+
single_use: v.boolean().optional().describe("Force to block user keyboard.")
|
|
38607
|
+
}).optional().describe("Interactive represents a rich message with UI elements."),
|
|
38608
|
+
location: v.object({
|
|
38609
|
+
address: v.string().optional(),
|
|
38610
|
+
latitude: v.number().optional(),
|
|
38611
|
+
longitude: v.number().optional(),
|
|
38612
|
+
name: v.string().optional()
|
|
38613
|
+
}).optional(),
|
|
38614
|
+
metadata: v.looseObject({}).optional().describe("Arbitrary message metadata.\nCan contain structured data depending on message type."),
|
|
38615
|
+
reacted_metadata: v.object({
|
|
38616
|
+
button_code: v.string().optional().describe("Button identifier."),
|
|
38617
|
+
callback_data: v.string().optional().describe("Optional callback payload."),
|
|
38618
|
+
in_reply_to: v.string().optional().describe("Original message ID."),
|
|
38619
|
+
reacted_at: v.string().optional().describe("Unix time in milliseconds when callback button was clicked."),
|
|
38620
|
+
reacted_by: v.object({
|
|
38621
|
+
contact: v.object({
|
|
38622
|
+
app_id: v.string().optional().describe("Identifier of the specific integration app or bot."),
|
|
38623
|
+
created_at: v.string().optional().describe("Record creation timestamp (Unix Epoch in milliseconds)."),
|
|
38624
|
+
is_bot: v.boolean().optional().describe("Represents if usere is real person or automatic script."),
|
|
38625
|
+
iss: v.string().optional().describe("Provider-specific unique identifier (Issuer ID)."),
|
|
38626
|
+
metadata: v.record(v.string(), v.string()).optional().describe("Additional dynamic attributes provided by the messenger."),
|
|
38627
|
+
name: v.string().optional().describe("Display name of the contact."),
|
|
38628
|
+
sub: v.string().optional().describe("Associated internal system subject/identifier."),
|
|
38629
|
+
type: v.string().optional().describe("Channel type (e.g., 'webchat', 'telegram')."),
|
|
38630
|
+
updated_at: v.string().optional().describe("Last record update timestamp (Unix Epoch in milliseconds)."),
|
|
38631
|
+
username: v.string().optional().describe("Technical username or handle."),
|
|
38632
|
+
vias: v.array(v.object({
|
|
38633
|
+
contact_id: v.string().optional(),
|
|
38634
|
+
created_at: v.string().optional(),
|
|
38635
|
+
disable: v.boolean().optional(),
|
|
38636
|
+
disable_reason: v.string().optional(),
|
|
38637
|
+
metadata: v.looseObject({}).optional(),
|
|
38638
|
+
updated_at: v.string().optional(),
|
|
38639
|
+
via: v.string().optional()
|
|
38640
|
+
})).optional()
|
|
38641
|
+
}).optional().describe("Contact represents an external messaging identity."),
|
|
38642
|
+
id: v.string().optional(),
|
|
38643
|
+
permissions: v.object({
|
|
38644
|
+
can_add_members: v.boolean().optional(),
|
|
38645
|
+
can_change_members_permissions: v.boolean().optional(),
|
|
38646
|
+
can_change_thread_info: v.boolean().optional(),
|
|
38647
|
+
can_delete_messages: v.boolean().optional(),
|
|
38648
|
+
can_remove_members: v.boolean().optional(),
|
|
38649
|
+
can_send_messages: v.boolean().optional(),
|
|
38650
|
+
created_at: v.string().optional(),
|
|
38651
|
+
id: v.string().optional(),
|
|
38652
|
+
member_id: v.string().optional(),
|
|
38653
|
+
updated_at: v.string().optional()
|
|
38654
|
+
}).optional(),
|
|
38655
|
+
role: v.enum([
|
|
38656
|
+
"ROLE_UNSPECIFIED",
|
|
38657
|
+
"ROLE_MEMBER",
|
|
38658
|
+
"ROLE_ADMIN",
|
|
38659
|
+
"ROLE_OWNER",
|
|
38660
|
+
"ROLE_SUPERVISOR"
|
|
38661
|
+
]).default("ROLE_UNSPECIFIED")
|
|
38662
|
+
}).optional().describe("User who clicked the button.")
|
|
38663
|
+
}).optional().describe("Metadata for button reaction for interactive message."),
|
|
38664
|
+
reactions: v.array(v.object({
|
|
38665
|
+
count: v.int().optional().describe("Number of members currently holding this reaction."),
|
|
38666
|
+
emoji: v.string().optional().describe("Unicode emoji this reaction aggregates."),
|
|
38667
|
+
last_reacted_at: v.string().optional().describe("Unix time in milliseconds of the most recent reaction with this emoji."),
|
|
38668
|
+
reacted_by_me: v.boolean().optional().describe("True when the requesting caller is one of the reactors."),
|
|
38669
|
+
reactor_ids: v.array(v.string()).optional().describe("Capped sample of reactor contact ids (for UI); not necessarily all of them.")
|
|
38670
|
+
}).describe("MessageReaction is one emoji aggregate on a history message.")).optional().describe("Emoji reactions currently held on the message, aggregated per emoji."),
|
|
38671
|
+
reply_to: v.object({
|
|
38672
|
+
attachment_address: v.string().optional(),
|
|
38673
|
+
attachment_kind: v.string().optional(),
|
|
38674
|
+
attachment_mime: v.string().optional(),
|
|
38675
|
+
attachment_name: v.string().optional(),
|
|
38676
|
+
body: v.string().optional(),
|
|
38677
|
+
created_at: v.string().optional(),
|
|
38678
|
+
is_deleted: v.boolean().optional(),
|
|
38679
|
+
message_id: v.string().optional(),
|
|
38680
|
+
sender: v.object({
|
|
38681
|
+
contact: v.object({
|
|
38682
|
+
app_id: v.string().optional().describe("Identifier of the specific integration app or bot."),
|
|
38683
|
+
created_at: v.string().optional().describe("Record creation timestamp (Unix Epoch in milliseconds)."),
|
|
38684
|
+
is_bot: v.boolean().optional().describe("Represents if usere is real person or automatic script."),
|
|
38685
|
+
iss: v.string().optional().describe("Provider-specific unique identifier (Issuer ID)."),
|
|
38686
|
+
metadata: v.record(v.string(), v.string()).optional().describe("Additional dynamic attributes provided by the messenger."),
|
|
38687
|
+
name: v.string().optional().describe("Display name of the contact."),
|
|
38688
|
+
sub: v.string().optional().describe("Associated internal system subject/identifier."),
|
|
38689
|
+
type: v.string().optional().describe("Channel type (e.g., 'webchat', 'telegram')."),
|
|
38690
|
+
updated_at: v.string().optional().describe("Last record update timestamp (Unix Epoch in milliseconds)."),
|
|
38691
|
+
username: v.string().optional().describe("Technical username or handle."),
|
|
38692
|
+
vias: v.array(v.object({
|
|
38693
|
+
contact_id: v.string().optional(),
|
|
38694
|
+
created_at: v.string().optional(),
|
|
38695
|
+
disable: v.boolean().optional(),
|
|
38696
|
+
disable_reason: v.string().optional(),
|
|
38697
|
+
metadata: v.looseObject({}).optional(),
|
|
38698
|
+
updated_at: v.string().optional(),
|
|
38699
|
+
via: v.string().optional()
|
|
38700
|
+
})).optional()
|
|
38701
|
+
}).optional().describe("Contact represents an external messaging identity."),
|
|
38702
|
+
id: v.string().optional(),
|
|
38703
|
+
permissions: v.object({
|
|
38704
|
+
can_add_members: v.boolean().optional(),
|
|
38705
|
+
can_change_members_permissions: v.boolean().optional(),
|
|
38706
|
+
can_change_thread_info: v.boolean().optional(),
|
|
38707
|
+
can_delete_messages: v.boolean().optional(),
|
|
38708
|
+
can_remove_members: v.boolean().optional(),
|
|
38709
|
+
can_send_messages: v.boolean().optional(),
|
|
38710
|
+
created_at: v.string().optional(),
|
|
38711
|
+
id: v.string().optional(),
|
|
38712
|
+
member_id: v.string().optional(),
|
|
38713
|
+
updated_at: v.string().optional()
|
|
38714
|
+
}).optional(),
|
|
38715
|
+
role: v.enum([
|
|
38716
|
+
"ROLE_UNSPECIFIED",
|
|
38717
|
+
"ROLE_MEMBER",
|
|
38718
|
+
"ROLE_ADMIN",
|
|
38719
|
+
"ROLE_OWNER",
|
|
38720
|
+
"ROLE_SUPERVISOR"
|
|
38721
|
+
]).default("ROLE_UNSPECIFIED")
|
|
38722
|
+
}).optional().describe("ThreadMember represents a thread participant\nwith optional type-specific settings."),
|
|
38723
|
+
sender_id: v.string().optional(),
|
|
38724
|
+
type: v.string().optional().describe("Kind of the quoted message: text, document, image, system, interactive,\nlocation or contact.")
|
|
38725
|
+
}).optional(),
|
|
38726
|
+
revision_count: v.int().optional().describe("Number of entries in the message's change history. Zero means the message\nwas never edited or deleted; otherwise GetMessageRevisions returns that\nmany entries."),
|
|
38727
|
+
sender: v.object({
|
|
38728
|
+
contact: v.object({
|
|
38729
|
+
app_id: v.string().optional().describe("Identifier of the specific integration app or bot."),
|
|
38730
|
+
created_at: v.string().optional().describe("Record creation timestamp (Unix Epoch in milliseconds)."),
|
|
38731
|
+
is_bot: v.boolean().optional().describe("Represents if usere is real person or automatic script."),
|
|
38732
|
+
iss: v.string().optional().describe("Provider-specific unique identifier (Issuer ID)."),
|
|
38733
|
+
metadata: v.record(v.string(), v.string()).optional().describe("Additional dynamic attributes provided by the messenger."),
|
|
38734
|
+
name: v.string().optional().describe("Display name of the contact."),
|
|
38735
|
+
sub: v.string().optional().describe("Associated internal system subject/identifier."),
|
|
38736
|
+
type: v.string().optional().describe("Channel type (e.g., 'webchat', 'telegram')."),
|
|
38737
|
+
updated_at: v.string().optional().describe("Last record update timestamp (Unix Epoch in milliseconds)."),
|
|
38738
|
+
username: v.string().optional().describe("Technical username or handle."),
|
|
38739
|
+
vias: v.array(v.object({
|
|
38740
|
+
contact_id: v.string().optional(),
|
|
38741
|
+
created_at: v.string().optional(),
|
|
38742
|
+
disable: v.boolean().optional(),
|
|
38743
|
+
disable_reason: v.string().optional(),
|
|
38744
|
+
metadata: v.looseObject({}).optional(),
|
|
38745
|
+
updated_at: v.string().optional(),
|
|
38746
|
+
via: v.string().optional()
|
|
38747
|
+
})).optional()
|
|
38748
|
+
}).optional().describe("Contact represents an external messaging identity."),
|
|
38749
|
+
id: v.string().optional(),
|
|
38750
|
+
permissions: v.object({
|
|
38751
|
+
can_add_members: v.boolean().optional(),
|
|
38752
|
+
can_change_members_permissions: v.boolean().optional(),
|
|
38753
|
+
can_change_thread_info: v.boolean().optional(),
|
|
38754
|
+
can_delete_messages: v.boolean().optional(),
|
|
38755
|
+
can_remove_members: v.boolean().optional(),
|
|
38756
|
+
can_send_messages: v.boolean().optional(),
|
|
38757
|
+
created_at: v.string().optional(),
|
|
38758
|
+
id: v.string().optional(),
|
|
38759
|
+
member_id: v.string().optional(),
|
|
38760
|
+
updated_at: v.string().optional()
|
|
38761
|
+
}).optional(),
|
|
38762
|
+
role: v.enum([
|
|
38763
|
+
"ROLE_UNSPECIFIED",
|
|
38764
|
+
"ROLE_MEMBER",
|
|
38765
|
+
"ROLE_ADMIN",
|
|
38766
|
+
"ROLE_OWNER",
|
|
38767
|
+
"ROLE_SUPERVISOR"
|
|
38768
|
+
]).default("ROLE_UNSPECIFIED")
|
|
38769
|
+
}).optional().describe("Sender user aggregated information."),
|
|
38770
|
+
seq: v.string().optional().describe("Per-thread monotonic sequence number, assigned on message creation."),
|
|
38771
|
+
system: v.object({
|
|
38772
|
+
message_id: v.string().optional().describe("ID of message for which system messages is binded."),
|
|
38773
|
+
metadata: v.looseObject({}).optional().describe("Represents additional metadata binded into system message."),
|
|
38774
|
+
type: v.string().optional().describe("Represents type of the message.")
|
|
38775
|
+
}).optional().describe("System message content."),
|
|
38776
|
+
thread_id: v.string().optional().describe("Identifier of the thread the message belongs to."),
|
|
38777
|
+
type: v.int().optional().describe("Message type identifier.")
|
|
38778
|
+
}).optional().describe("Last message of the linked thread."),
|
|
38779
|
+
members: v.array(v.object({
|
|
38780
|
+
contact: v.object({
|
|
38781
|
+
app_id: v.string().optional().describe("Identifier of the specific integration app or bot."),
|
|
38782
|
+
created_at: v.string().optional().describe("Record creation timestamp (Unix Epoch in milliseconds)."),
|
|
38783
|
+
is_bot: v.boolean().optional().describe("Represents if usere is real person or automatic script."),
|
|
38784
|
+
iss: v.string().optional().describe("Provider-specific unique identifier (Issuer ID)."),
|
|
38785
|
+
metadata: v.record(v.string(), v.string()).optional().describe("Additional dynamic attributes provided by the messenger."),
|
|
38786
|
+
name: v.string().optional().describe("Display name of the contact."),
|
|
38787
|
+
sub: v.string().optional().describe("Associated internal system subject/identifier."),
|
|
38788
|
+
type: v.string().optional().describe("Channel type (e.g., 'webchat', 'telegram')."),
|
|
38789
|
+
updated_at: v.string().optional().describe("Last record update timestamp (Unix Epoch in milliseconds)."),
|
|
38790
|
+
username: v.string().optional().describe("Technical username or handle."),
|
|
38791
|
+
vias: v.array(v.object({
|
|
38792
|
+
contact_id: v.string().optional(),
|
|
38793
|
+
created_at: v.string().optional(),
|
|
38794
|
+
disable: v.boolean().optional(),
|
|
38795
|
+
disable_reason: v.string().optional(),
|
|
38796
|
+
metadata: v.looseObject({}).optional(),
|
|
38797
|
+
updated_at: v.string().optional(),
|
|
38798
|
+
via: v.string().optional()
|
|
38799
|
+
})).optional()
|
|
38800
|
+
}).optional().describe("Contact represents an external messaging identity."),
|
|
38801
|
+
id: v.string().optional(),
|
|
38802
|
+
permissions: v.object({
|
|
38803
|
+
can_add_members: v.boolean().optional(),
|
|
38804
|
+
can_change_members_permissions: v.boolean().optional(),
|
|
38805
|
+
can_change_thread_info: v.boolean().optional(),
|
|
38806
|
+
can_delete_messages: v.boolean().optional(),
|
|
38807
|
+
can_remove_members: v.boolean().optional(),
|
|
38808
|
+
can_send_messages: v.boolean().optional(),
|
|
38809
|
+
created_at: v.string().optional(),
|
|
38810
|
+
id: v.string().optional(),
|
|
38811
|
+
member_id: v.string().optional(),
|
|
38812
|
+
updated_at: v.string().optional()
|
|
38813
|
+
}).optional(),
|
|
38814
|
+
role: v.enum([
|
|
38815
|
+
"ROLE_UNSPECIFIED",
|
|
38816
|
+
"ROLE_MEMBER",
|
|
38817
|
+
"ROLE_ADMIN",
|
|
38818
|
+
"ROLE_OWNER",
|
|
38819
|
+
"ROLE_SUPERVISOR"
|
|
38820
|
+
]).default("ROLE_UNSPECIFIED")
|
|
38821
|
+
}).describe("ThreadMember represents a thread participant\nwith optional type-specific settings.")).optional().describe("Detailed member information."),
|
|
38822
|
+
read_states: v.array(v.object({
|
|
38823
|
+
delivered_up_to_seq: v.string().optional(),
|
|
38824
|
+
member: v.object({
|
|
38825
|
+
contact: v.object({
|
|
38826
|
+
app_id: v.string().optional().describe("Identifier of the specific integration app or bot."),
|
|
38827
|
+
created_at: v.string().optional().describe("Record creation timestamp (Unix Epoch in milliseconds)."),
|
|
38828
|
+
is_bot: v.boolean().optional().describe("Represents if usere is real person or automatic script."),
|
|
38829
|
+
iss: v.string().optional().describe("Provider-specific unique identifier (Issuer ID)."),
|
|
38830
|
+
metadata: v.record(v.string(), v.string()).optional().describe("Additional dynamic attributes provided by the messenger."),
|
|
38831
|
+
name: v.string().optional().describe("Display name of the contact."),
|
|
38832
|
+
sub: v.string().optional().describe("Associated internal system subject/identifier."),
|
|
38833
|
+
type: v.string().optional().describe("Channel type (e.g., 'webchat', 'telegram')."),
|
|
38834
|
+
updated_at: v.string().optional().describe("Last record update timestamp (Unix Epoch in milliseconds)."),
|
|
38835
|
+
username: v.string().optional().describe("Technical username or handle."),
|
|
38836
|
+
vias: v.array(v.object({
|
|
38837
|
+
contact_id: v.string().optional(),
|
|
38838
|
+
created_at: v.string().optional(),
|
|
38839
|
+
disable: v.boolean().optional(),
|
|
38840
|
+
disable_reason: v.string().optional(),
|
|
38841
|
+
metadata: v.looseObject({}).optional(),
|
|
38842
|
+
updated_at: v.string().optional(),
|
|
38843
|
+
via: v.string().optional()
|
|
38844
|
+
})).optional()
|
|
38845
|
+
}).optional().describe("Contact represents an external messaging identity."),
|
|
38846
|
+
id: v.string().optional(),
|
|
38847
|
+
permissions: v.object({
|
|
38848
|
+
can_add_members: v.boolean().optional(),
|
|
38849
|
+
can_change_members_permissions: v.boolean().optional(),
|
|
38850
|
+
can_change_thread_info: v.boolean().optional(),
|
|
38851
|
+
can_delete_messages: v.boolean().optional(),
|
|
38852
|
+
can_remove_members: v.boolean().optional(),
|
|
38853
|
+
can_send_messages: v.boolean().optional(),
|
|
38854
|
+
created_at: v.string().optional(),
|
|
38855
|
+
id: v.string().optional(),
|
|
38856
|
+
member_id: v.string().optional(),
|
|
38857
|
+
updated_at: v.string().optional()
|
|
38858
|
+
}).optional(),
|
|
38859
|
+
role: v.enum([
|
|
38860
|
+
"ROLE_UNSPECIFIED",
|
|
38861
|
+
"ROLE_MEMBER",
|
|
38862
|
+
"ROLE_ADMIN",
|
|
38863
|
+
"ROLE_OWNER",
|
|
38864
|
+
"ROLE_SUPERVISOR"
|
|
38865
|
+
]).default("ROLE_UNSPECIFIED")
|
|
38866
|
+
}).optional().describe("The member, in the same shape as history's sender; set by GetUpdates."),
|
|
38867
|
+
member_id: v.string().optional(),
|
|
38868
|
+
read_up_to_seq: v.string().optional()
|
|
38869
|
+
}).describe("MemberReadState is one member's delivery/read horizon in a thread, as\nper-thread message seq (0 = nothing reached that state yet).")).optional().describe("Per-member read horizons (snapshot, matches GetUpdates model).\nClient derives inbox/outbox watermarks: own_last_read = inbox; MIN over others = outbox."),
|
|
38870
|
+
settings: v.object({
|
|
38871
|
+
created_at: v.string().optional().describe("Creation timestamp (Unix time, milliseconds)."),
|
|
38872
|
+
domain_id: v.int().optional().describe("Domain identifier."),
|
|
38873
|
+
id: v.string().optional().describe("Settings identifier."),
|
|
38874
|
+
title: v.string().optional().describe("Custom title for the direct thread.\nUsually represents the display name of the conversation."),
|
|
38875
|
+
updated_at: v.string().optional().describe("Last update timestamp (Unix time, milliseconds).")
|
|
38876
|
+
}).optional().describe("User-specific settings for this thread."),
|
|
38877
|
+
subject: v.string().optional().describe("Thread subject or title."),
|
|
38878
|
+
type: v.enum([
|
|
38879
|
+
"UNKNOWN",
|
|
38880
|
+
"DIRECT",
|
|
38881
|
+
"GROUP",
|
|
38882
|
+
"CHANNEL"
|
|
38883
|
+
]).default("UNKNOWN").describe("Type of the thread."),
|
|
38884
|
+
unread_count: v.int().optional().describe("Number of unread messages in this thread for the calling participant.\nCounts content messages not yet read; the caller's own messages and\nsystem messages are excluded."),
|
|
38885
|
+
updated_at: v.string().optional().describe("Last update timestamp (Unix time, milliseconds)."),
|
|
38886
|
+
updates_cursor: v.string().optional().describe("GetUpdates cursor read before this thread (set by Get; Search carries it on the response)."),
|
|
38887
|
+
variables: v.object({
|
|
38888
|
+
thread_id: v.string().optional().describe("Unique identifier for the thread."),
|
|
38889
|
+
variables: v.record(v.string(), v.object({
|
|
38890
|
+
set_at: v.string().optional().describe("Timestamp when the variable was set (Unix time, milliseconds)."),
|
|
38891
|
+
set_by: v.object({
|
|
38892
|
+
app_id: v.string().optional().describe("Identifier of the specific integration app or bot."),
|
|
38893
|
+
created_at: v.string().optional().describe("Record creation timestamp (Unix Epoch in milliseconds)."),
|
|
38894
|
+
is_bot: v.boolean().optional().describe("Represents if usere is real person or automatic script."),
|
|
38895
|
+
iss: v.string().optional().describe("Provider-specific unique identifier (Issuer ID)."),
|
|
38896
|
+
metadata: v.record(v.string(), v.string()).optional().describe("Additional dynamic attributes provided by the messenger."),
|
|
38897
|
+
name: v.string().optional().describe("Display name of the contact."),
|
|
38898
|
+
sub: v.string().optional().describe("Associated internal system subject/identifier."),
|
|
38899
|
+
type: v.string().optional().describe("Channel type (e.g., 'webchat', 'telegram')."),
|
|
38900
|
+
updated_at: v.string().optional().describe("Last record update timestamp (Unix Epoch in milliseconds)."),
|
|
38901
|
+
username: v.string().optional().describe("Technical username or handle."),
|
|
38902
|
+
vias: v.array(v.object({
|
|
38903
|
+
contact_id: v.string().optional(),
|
|
38904
|
+
created_at: v.string().optional(),
|
|
38905
|
+
disable: v.boolean().optional(),
|
|
38906
|
+
disable_reason: v.string().optional(),
|
|
38907
|
+
metadata: v.looseObject({}).optional(),
|
|
38908
|
+
updated_at: v.string().optional(),
|
|
38909
|
+
via: v.string().optional()
|
|
38910
|
+
})).optional()
|
|
38911
|
+
}).optional().describe("Contact who set the variable."),
|
|
38912
|
+
value: v.unknown().optional().describe("Arbitrary structured value of the variable.\nSupports dynamic JSON-like content.")
|
|
38913
|
+
}).describe("VariableEntry represents a single variable value\nalong with metadata about who and when it was set.")).optional().describe("Key-value map of variables.\nKey is the variable name, value contains data and metadata.")
|
|
38914
|
+
}).optional().describe("Optional variables associated with the thread.")
|
|
38915
|
+
}).optional().describe("The thread itself, set when it is new to the caller (created or joined since cursor)."),
|
|
38916
|
+
left: v.boolean().optional().describe("The caller is no longer a member: drop the thread."),
|
|
38917
|
+
member_changes: v.array(v.object({
|
|
38918
|
+
action: v.enum([
|
|
38919
|
+
"THREAD_MEMBER_CHANGE_ACTION_UNSPECIFIED",
|
|
38920
|
+
"THREAD_MEMBER_CHANGE_ACTION_JOINED",
|
|
38921
|
+
"THREAD_MEMBER_CHANGE_ACTION_LEFT"
|
|
38922
|
+
]).default("THREAD_MEMBER_CHANGE_ACTION_UNSPECIFIED"),
|
|
38923
|
+
by: v.object({
|
|
38924
|
+
contact: v.object({
|
|
38925
|
+
app_id: v.string().optional().describe("Identifier of the specific integration app or bot."),
|
|
38926
|
+
created_at: v.string().optional().describe("Record creation timestamp (Unix Epoch in milliseconds)."),
|
|
38927
|
+
is_bot: v.boolean().optional().describe("Represents if usere is real person or automatic script."),
|
|
38928
|
+
iss: v.string().optional().describe("Provider-specific unique identifier (Issuer ID)."),
|
|
38929
|
+
metadata: v.record(v.string(), v.string()).optional().describe("Additional dynamic attributes provided by the messenger."),
|
|
38930
|
+
name: v.string().optional().describe("Display name of the contact."),
|
|
38931
|
+
sub: v.string().optional().describe("Associated internal system subject/identifier."),
|
|
38932
|
+
type: v.string().optional().describe("Channel type (e.g., 'webchat', 'telegram')."),
|
|
38933
|
+
updated_at: v.string().optional().describe("Last record update timestamp (Unix Epoch in milliseconds)."),
|
|
38934
|
+
username: v.string().optional().describe("Technical username or handle."),
|
|
38935
|
+
vias: v.array(v.object({
|
|
38936
|
+
contact_id: v.string().optional(),
|
|
38937
|
+
created_at: v.string().optional(),
|
|
38938
|
+
disable: v.boolean().optional(),
|
|
38939
|
+
disable_reason: v.string().optional(),
|
|
38940
|
+
metadata: v.looseObject({}).optional(),
|
|
38941
|
+
updated_at: v.string().optional(),
|
|
38942
|
+
via: v.string().optional()
|
|
38943
|
+
})).optional()
|
|
38944
|
+
}).optional().describe("Contact represents an external messaging identity."),
|
|
38945
|
+
id: v.string().optional(),
|
|
38946
|
+
permissions: v.object({
|
|
38947
|
+
can_add_members: v.boolean().optional(),
|
|
38948
|
+
can_change_members_permissions: v.boolean().optional(),
|
|
38949
|
+
can_change_thread_info: v.boolean().optional(),
|
|
38950
|
+
can_delete_messages: v.boolean().optional(),
|
|
38951
|
+
can_remove_members: v.boolean().optional(),
|
|
38952
|
+
can_send_messages: v.boolean().optional(),
|
|
38953
|
+
created_at: v.string().optional(),
|
|
38954
|
+
id: v.string().optional(),
|
|
38955
|
+
member_id: v.string().optional(),
|
|
38956
|
+
updated_at: v.string().optional()
|
|
38957
|
+
}).optional(),
|
|
38958
|
+
role: v.enum([
|
|
38959
|
+
"ROLE_UNSPECIFIED",
|
|
38960
|
+
"ROLE_MEMBER",
|
|
38961
|
+
"ROLE_ADMIN",
|
|
38962
|
+
"ROLE_OWNER",
|
|
38963
|
+
"ROLE_SUPERVISOR"
|
|
38964
|
+
]).default("ROLE_UNSPECIFIED")
|
|
38965
|
+
}).optional().describe("Who made the change."),
|
|
38966
|
+
member: v.object({
|
|
38967
|
+
contact: v.object({
|
|
38968
|
+
app_id: v.string().optional().describe("Identifier of the specific integration app or bot."),
|
|
38969
|
+
created_at: v.string().optional().describe("Record creation timestamp (Unix Epoch in milliseconds)."),
|
|
38970
|
+
is_bot: v.boolean().optional().describe("Represents if usere is real person or automatic script."),
|
|
38971
|
+
iss: v.string().optional().describe("Provider-specific unique identifier (Issuer ID)."),
|
|
38972
|
+
metadata: v.record(v.string(), v.string()).optional().describe("Additional dynamic attributes provided by the messenger."),
|
|
38973
|
+
name: v.string().optional().describe("Display name of the contact."),
|
|
38974
|
+
sub: v.string().optional().describe("Associated internal system subject/identifier."),
|
|
38975
|
+
type: v.string().optional().describe("Channel type (e.g., 'webchat', 'telegram')."),
|
|
38976
|
+
updated_at: v.string().optional().describe("Last record update timestamp (Unix Epoch in milliseconds)."),
|
|
38977
|
+
username: v.string().optional().describe("Technical username or handle."),
|
|
38978
|
+
vias: v.array(v.object({
|
|
38979
|
+
contact_id: v.string().optional(),
|
|
38980
|
+
created_at: v.string().optional(),
|
|
38981
|
+
disable: v.boolean().optional(),
|
|
38982
|
+
disable_reason: v.string().optional(),
|
|
38983
|
+
metadata: v.looseObject({}).optional(),
|
|
38984
|
+
updated_at: v.string().optional(),
|
|
38985
|
+
via: v.string().optional()
|
|
38986
|
+
})).optional()
|
|
38987
|
+
}).optional().describe("Contact represents an external messaging identity."),
|
|
38988
|
+
id: v.string().optional(),
|
|
38989
|
+
permissions: v.object({
|
|
38990
|
+
can_add_members: v.boolean().optional(),
|
|
38991
|
+
can_change_members_permissions: v.boolean().optional(),
|
|
38992
|
+
can_change_thread_info: v.boolean().optional(),
|
|
38993
|
+
can_delete_messages: v.boolean().optional(),
|
|
38994
|
+
can_remove_members: v.boolean().optional(),
|
|
38995
|
+
can_send_messages: v.boolean().optional(),
|
|
38996
|
+
created_at: v.string().optional(),
|
|
38997
|
+
id: v.string().optional(),
|
|
38998
|
+
member_id: v.string().optional(),
|
|
38999
|
+
updated_at: v.string().optional()
|
|
39000
|
+
}).optional(),
|
|
39001
|
+
role: v.enum([
|
|
39002
|
+
"ROLE_UNSPECIFIED",
|
|
39003
|
+
"ROLE_MEMBER",
|
|
39004
|
+
"ROLE_ADMIN",
|
|
39005
|
+
"ROLE_OWNER",
|
|
39006
|
+
"ROLE_SUPERVISOR"
|
|
39007
|
+
]).default("ROLE_UNSPECIFIED")
|
|
39008
|
+
}).optional().describe("ThreadMember represents a thread participant\nwith optional type-specific settings.")
|
|
39009
|
+
})).optional(),
|
|
39010
|
+
messages: v.array(v.object({
|
|
39011
|
+
body: v.string().optional(),
|
|
39012
|
+
contact: v.object({
|
|
39013
|
+
email: v.string().optional(),
|
|
39014
|
+
name: v.string().optional(),
|
|
39015
|
+
phone: v.string().optional()
|
|
39016
|
+
}).optional(),
|
|
39017
|
+
created_at: v.string().optional(),
|
|
39018
|
+
documents: v.array(v.object({
|
|
39019
|
+
created_at: v.string().optional().describe("Creation timestamp (Unix time, milliseconds)."),
|
|
39020
|
+
file_id: v.string().optional().describe("File storage identifier."),
|
|
39021
|
+
id: v.string().optional().describe("Document identifier."),
|
|
39022
|
+
message_id: v.string().optional().describe("Identifier of the message this document belongs to."),
|
|
39023
|
+
mime: v.string().optional().describe("MIME type of the document."),
|
|
39024
|
+
name: v.string().optional().describe("Original file name."),
|
|
39025
|
+
size: v.string().optional().describe("File size in bytes."),
|
|
39026
|
+
url: v.string().optional().describe("Public signed URL for downloading the document.")
|
|
39027
|
+
}).describe("Document represents a file attachment\nassociated with a message.")).optional(),
|
|
39028
|
+
edited_at: v.string().optional().describe("Set when the message was edited."),
|
|
39029
|
+
forward_origin: v.object({
|
|
39030
|
+
kind: v.enum([
|
|
39031
|
+
"FORWARD_ORIGIN_KIND_UNSPECIFIED",
|
|
39032
|
+
"FORWARD_ORIGIN_KIND_INTERNAL",
|
|
39033
|
+
"FORWARD_ORIGIN_KIND_EXTERNAL_USER",
|
|
39034
|
+
"FORWARD_ORIGIN_KIND_EXTERNAL_HIDDEN_USER",
|
|
39035
|
+
"FORWARD_ORIGIN_KIND_EXTERNAL_CHAT"
|
|
39036
|
+
]).default("FORWARD_ORIGIN_KIND_UNSPECIFIED").describe("ForwardOriginKind tells the client how to label a forwarded message and\nwhether the origin points at anything addressable inside Webitel.\n\n - FORWARD_ORIGIN_KIND_INTERNAL: Forwarded inside Webitel: sender_id and source_message_id are set.\n - FORWARD_ORIGIN_KIND_EXTERNAL_USER: Forwarded into the chat from an external messenger, author named.\n - FORWARD_ORIGIN_KIND_EXTERNAL_HIDDEN_USER: Same, but the author chose to hide their account, so there is no name.\n - FORWARD_ORIGIN_KIND_EXTERNAL_CHAT: Origin is an external group or channel rather than a person."),
|
|
39037
|
+
original_sent_at: v.string().optional().describe("When the original message was sent, Unix time in milliseconds."),
|
|
39038
|
+
sender_id: v.string().optional().describe("Contact id of the original author. Empty unless kind is INTERNAL."),
|
|
39039
|
+
sender_name: v.string().optional().describe("Display name of the original author — the \"from whom\" label."),
|
|
39040
|
+
source_message_id: v.string().optional().describe("Source message this copy was made from. Empty unless kind is INTERNAL,\nand cleared if the source is later purged.")
|
|
39041
|
+
}).optional().describe("ForwardOrigin is a snapshot of the original author taken at forward time.\nUnlike ReplyToMessage it carries no enriched ThreadMember: the original author\nis generally not a member of the chat the copy landed in, so sender_name is\nthe only label a client can rely on."),
|
|
39042
|
+
id: v.string().optional(),
|
|
39043
|
+
images: v.array(v.object({
|
|
39044
|
+
created_at: v.string().optional().describe("Creation timestamp (Unix time, milliseconds)."),
|
|
39045
|
+
file_id: v.string().optional().describe("File storage identifier."),
|
|
39046
|
+
height: v.int().optional().describe("Image height in pixels."),
|
|
39047
|
+
id: v.string().optional().describe("Image identifier."),
|
|
39048
|
+
message_id: v.string().optional().describe("Identifier of the message this message belongs to."),
|
|
39049
|
+
mime: v.string().optional().describe("MIME type of the image."),
|
|
39050
|
+
url: v.string().optional().describe("Public signed URL for accessing the image."),
|
|
39051
|
+
width: v.int().optional().describe("Image width in pixels.")
|
|
39052
|
+
}).describe("Image represents an image attachment\nassociated with a message.")).optional(),
|
|
39053
|
+
interactive: v.object({
|
|
39054
|
+
documents: v.object({ documents: v.array(v.object({
|
|
39055
|
+
file_name: v.string().optional(),
|
|
39056
|
+
id: v.string().optional(),
|
|
39057
|
+
mime_type: v.string().optional(),
|
|
39058
|
+
size_bytes: v.string().optional(),
|
|
39059
|
+
url: v.string().optional()
|
|
39060
|
+
}).describe("Represents `Document` message with necessary fields\nto process it into frequently used `document`\nentity in messaging systems.")).optional().describe("Documents to be attached to the header of interactive message.\nMax allowed documents: 10.") }).optional().describe("Document attachments header."),
|
|
39061
|
+
images: v.object({ images: v.array(v.object({
|
|
39062
|
+
id: v.string().optional(),
|
|
39063
|
+
link: v.string().optional(),
|
|
39064
|
+
mime_type: v.string().optional(),
|
|
39065
|
+
name: v.string().optional()
|
|
39066
|
+
}).describe("Represents `Image` entity with\nnecessary fields.")).optional().describe("Images to be attached to the header of interactive message.\nMax allowed images: 10.") }).optional().describe("Images attachment header."),
|
|
39067
|
+
input_field_state: v.enum([
|
|
39068
|
+
"INPUT_FIELD_STATE_UNSPECIFIED",
|
|
39069
|
+
"INPUT_FIELD_STATE_REGULAR",
|
|
39070
|
+
"INPUT_FIELD_STATE_MINIMIZED",
|
|
39071
|
+
"INPUT_FIELD_STATE_HIDDEN"
|
|
39072
|
+
]).default("INPUT_FIELD_STATE_UNSPECIFIED").describe("Whether the recipient may still type while this menu is displayed."),
|
|
39073
|
+
list_reply: v.object({
|
|
39074
|
+
main_button_title: v.string().optional().describe("Title of the main button, that on-click show up list."),
|
|
39075
|
+
sections: v.array(v.object({
|
|
39076
|
+
buttons: v.array(v.object({
|
|
39077
|
+
callback: v.object({ data: v.string().optional().describe("Opaque data payload passed back to the server upon interaction.") }).optional().describe("Triggers a backend event (callback) with associated metadata."),
|
|
39078
|
+
id: v.string().optional().describe("Unique idempotent identifier for the button.\nUsed by the frontend to track state and prevent duplicate interactions."),
|
|
39079
|
+
label: v.string().optional().describe("The human-readable label displayed on the button."),
|
|
39080
|
+
metadata: v.looseObject({}).optional().describe("Extensible metadata for UI/UX styling (e.g., \"color\", \"theme\", \"size\").\nUsage: Allows for future-proofing without breaking schema changes."),
|
|
39081
|
+
request: v.object({ action: v.string().optional().describe("The specific action to be performed by the client application.") }).optional().describe("Requests sensitive information from the client (e.g., location or contact)."),
|
|
39082
|
+
url: v.object({ url: v.string().optional().describe("Must be a valid absolute URI (e.g., https://example.com).") }).optional().describe("Directs the user to an external web resource.")
|
|
39083
|
+
}).describe("Defines a single interactive element within the keyboard.\nEach button must have a unique identifier and a specific action type.")).optional().describe("Collection of buttons within this section.\nMinimum of 1 button is required to prevent empty sections."),
|
|
39084
|
+
section: v.string().optional().describe("The header text for this section. Must be concise and descriptive.")
|
|
39085
|
+
}).describe("Represents a row of buttons grouped under a specific logical section header.\nUseful for creating categorized menus or structured interactive interfaces.")).optional().describe("List with sections with buttons.")
|
|
39086
|
+
}).optional().describe("List reply with main list button text and sections with buttons."),
|
|
39087
|
+
markup: v.object({ rows: v.array(v.object({ buttons: v.array(v.object({
|
|
39088
|
+
callback: v.object({ data: v.string().optional().describe("Opaque data payload passed back to the server upon interaction.") }).optional().describe("Triggers a backend event (callback) with associated metadata."),
|
|
39089
|
+
id: v.string().optional().describe("Unique idempotent identifier for the button.\nUsed by the frontend to track state and prevent duplicate interactions."),
|
|
39090
|
+
label: v.string().optional().describe("The human-readable label displayed on the button."),
|
|
39091
|
+
metadata: v.looseObject({}).optional().describe("Extensible metadata for UI/UX styling (e.g., \"color\", \"theme\", \"size\").\nUsage: Allows for future-proofing without breaking schema changes."),
|
|
39092
|
+
request: v.object({ action: v.string().optional().describe("The specific action to be performed by the client application.") }).optional().describe("Requests sensitive information from the client (e.g., location or contact)."),
|
|
39093
|
+
url: v.object({ url: v.string().optional().describe("Must be a valid absolute URI (e.g., https://example.com).") }).optional().describe("Directs the user to an external web resource.")
|
|
39094
|
+
}).describe("Defines a single interactive element within the keyboard.\nEach button must have a unique identifier and a specific action type.")).optional().describe("Horizontal collection of buttons.\nCapped at 10 to ensure UI responsiveness and prevent overflow.") }).describe("A standard horizontal row of interactive buttons without a section header.")).optional().describe("Rows of buttons matrix.") }).optional().describe("Markup matrix with buttons."),
|
|
39095
|
+
placement: v.enum([
|
|
39096
|
+
"MENU_PLACEMENT_UNSPECIFIED",
|
|
39097
|
+
"MENU_PLACEMENT_INLINE",
|
|
39098
|
+
"MENU_PLACEMENT_PERSISTENT"
|
|
39099
|
+
]).default("MENU_PLACEMENT_UNSPECIFIED").describe("Where the menu is rendered. Channels that only support one placement ignore it."),
|
|
39100
|
+
single_use: v.boolean().optional().describe("Force to block user keyboard.")
|
|
39101
|
+
}).optional().describe("Interactive represents a rich message with UI elements."),
|
|
39102
|
+
location: v.object({
|
|
39103
|
+
address: v.string().optional(),
|
|
39104
|
+
latitude: v.number().optional(),
|
|
39105
|
+
longitude: v.number().optional(),
|
|
39106
|
+
name: v.string().optional()
|
|
39107
|
+
}).optional(),
|
|
39108
|
+
metadata: v.looseObject({}).optional(),
|
|
39109
|
+
reactions: v.array(v.object({
|
|
39110
|
+
count: v.int().optional().describe("Number of members currently holding this reaction."),
|
|
39111
|
+
emoji: v.string().optional().describe("Unicode emoji this reaction aggregates."),
|
|
39112
|
+
last_reacted_at: v.string().optional().describe("Unix time in milliseconds of the most recent reaction with this emoji."),
|
|
39113
|
+
reacted_by_me: v.boolean().optional().describe("True when the requesting caller is one of the reactors."),
|
|
39114
|
+
reactor_ids: v.array(v.string()).optional().describe("Capped sample of reactor contact ids (for UI); not necessarily all of them.")
|
|
39115
|
+
}).describe("MessageReaction is one emoji aggregate on a history message.")).optional(),
|
|
39116
|
+
reply_to: v.object({
|
|
39117
|
+
attachment_address: v.string().optional(),
|
|
39118
|
+
attachment_kind: v.string().optional(),
|
|
39119
|
+
attachment_mime: v.string().optional(),
|
|
39120
|
+
attachment_name: v.string().optional(),
|
|
39121
|
+
body: v.string().optional(),
|
|
39122
|
+
created_at: v.string().optional(),
|
|
39123
|
+
is_deleted: v.boolean().optional(),
|
|
39124
|
+
message_id: v.string().optional(),
|
|
39125
|
+
sender: v.object({
|
|
39126
|
+
contact: v.object({
|
|
39127
|
+
app_id: v.string().optional().describe("Identifier of the specific integration app or bot."),
|
|
39128
|
+
created_at: v.string().optional().describe("Record creation timestamp (Unix Epoch in milliseconds)."),
|
|
39129
|
+
is_bot: v.boolean().optional().describe("Represents if usere is real person or automatic script."),
|
|
39130
|
+
iss: v.string().optional().describe("Provider-specific unique identifier (Issuer ID)."),
|
|
39131
|
+
metadata: v.record(v.string(), v.string()).optional().describe("Additional dynamic attributes provided by the messenger."),
|
|
39132
|
+
name: v.string().optional().describe("Display name of the contact."),
|
|
39133
|
+
sub: v.string().optional().describe("Associated internal system subject/identifier."),
|
|
39134
|
+
type: v.string().optional().describe("Channel type (e.g., 'webchat', 'telegram')."),
|
|
39135
|
+
updated_at: v.string().optional().describe("Last record update timestamp (Unix Epoch in milliseconds)."),
|
|
39136
|
+
username: v.string().optional().describe("Technical username or handle."),
|
|
39137
|
+
vias: v.array(v.object({
|
|
39138
|
+
contact_id: v.string().optional(),
|
|
39139
|
+
created_at: v.string().optional(),
|
|
39140
|
+
disable: v.boolean().optional(),
|
|
39141
|
+
disable_reason: v.string().optional(),
|
|
39142
|
+
metadata: v.looseObject({}).optional(),
|
|
39143
|
+
updated_at: v.string().optional(),
|
|
39144
|
+
via: v.string().optional()
|
|
39145
|
+
})).optional()
|
|
39146
|
+
}).optional().describe("Contact represents an external messaging identity."),
|
|
39147
|
+
id: v.string().optional(),
|
|
39148
|
+
permissions: v.object({
|
|
39149
|
+
can_add_members: v.boolean().optional(),
|
|
39150
|
+
can_change_members_permissions: v.boolean().optional(),
|
|
39151
|
+
can_change_thread_info: v.boolean().optional(),
|
|
39152
|
+
can_delete_messages: v.boolean().optional(),
|
|
39153
|
+
can_remove_members: v.boolean().optional(),
|
|
39154
|
+
can_send_messages: v.boolean().optional(),
|
|
39155
|
+
created_at: v.string().optional(),
|
|
39156
|
+
id: v.string().optional(),
|
|
39157
|
+
member_id: v.string().optional(),
|
|
39158
|
+
updated_at: v.string().optional()
|
|
39159
|
+
}).optional(),
|
|
39160
|
+
role: v.enum([
|
|
39161
|
+
"ROLE_UNSPECIFIED",
|
|
39162
|
+
"ROLE_MEMBER",
|
|
39163
|
+
"ROLE_ADMIN",
|
|
39164
|
+
"ROLE_OWNER",
|
|
39165
|
+
"ROLE_SUPERVISOR"
|
|
39166
|
+
]).default("ROLE_UNSPECIFIED")
|
|
39167
|
+
}).optional().describe("ThreadMember represents a thread participant\nwith optional type-specific settings."),
|
|
39168
|
+
sender_id: v.string().optional(),
|
|
39169
|
+
type: v.string().optional().describe("Kind of the quoted message: text, document, image, system, interactive,\nlocation or contact.")
|
|
39170
|
+
}).optional(),
|
|
39171
|
+
sender: v.object({
|
|
39172
|
+
contact: v.object({
|
|
39173
|
+
app_id: v.string().optional().describe("Identifier of the specific integration app or bot."),
|
|
39174
|
+
created_at: v.string().optional().describe("Record creation timestamp (Unix Epoch in milliseconds)."),
|
|
39175
|
+
is_bot: v.boolean().optional().describe("Represents if usere is real person or automatic script."),
|
|
39176
|
+
iss: v.string().optional().describe("Provider-specific unique identifier (Issuer ID)."),
|
|
39177
|
+
metadata: v.record(v.string(), v.string()).optional().describe("Additional dynamic attributes provided by the messenger."),
|
|
39178
|
+
name: v.string().optional().describe("Display name of the contact."),
|
|
39179
|
+
sub: v.string().optional().describe("Associated internal system subject/identifier."),
|
|
39180
|
+
type: v.string().optional().describe("Channel type (e.g., 'webchat', 'telegram')."),
|
|
39181
|
+
updated_at: v.string().optional().describe("Last record update timestamp (Unix Epoch in milliseconds)."),
|
|
39182
|
+
username: v.string().optional().describe("Technical username or handle."),
|
|
39183
|
+
vias: v.array(v.object({
|
|
39184
|
+
contact_id: v.string().optional(),
|
|
39185
|
+
created_at: v.string().optional(),
|
|
39186
|
+
disable: v.boolean().optional(),
|
|
39187
|
+
disable_reason: v.string().optional(),
|
|
39188
|
+
metadata: v.looseObject({}).optional(),
|
|
39189
|
+
updated_at: v.string().optional(),
|
|
39190
|
+
via: v.string().optional()
|
|
39191
|
+
})).optional()
|
|
39192
|
+
}).optional().describe("Contact represents an external messaging identity."),
|
|
39193
|
+
id: v.string().optional(),
|
|
39194
|
+
permissions: v.object({
|
|
39195
|
+
can_add_members: v.boolean().optional(),
|
|
39196
|
+
can_change_members_permissions: v.boolean().optional(),
|
|
39197
|
+
can_change_thread_info: v.boolean().optional(),
|
|
39198
|
+
can_delete_messages: v.boolean().optional(),
|
|
39199
|
+
can_remove_members: v.boolean().optional(),
|
|
39200
|
+
can_send_messages: v.boolean().optional(),
|
|
39201
|
+
created_at: v.string().optional(),
|
|
39202
|
+
id: v.string().optional(),
|
|
39203
|
+
member_id: v.string().optional(),
|
|
39204
|
+
updated_at: v.string().optional()
|
|
39205
|
+
}).optional(),
|
|
39206
|
+
role: v.enum([
|
|
39207
|
+
"ROLE_UNSPECIFIED",
|
|
39208
|
+
"ROLE_MEMBER",
|
|
39209
|
+
"ROLE_ADMIN",
|
|
39210
|
+
"ROLE_OWNER",
|
|
39211
|
+
"ROLE_SUPERVISOR"
|
|
39212
|
+
]).default("ROLE_UNSPECIFIED")
|
|
39213
|
+
}).optional().describe("ThreadMember represents a thread participant\nwith optional type-specific settings."),
|
|
39214
|
+
seq: v.string().optional(),
|
|
39215
|
+
system: v.object({
|
|
39216
|
+
message_id: v.string().optional().describe("ID of message for which system messages is binded."),
|
|
39217
|
+
metadata: v.looseObject({}).optional().describe("Represents additional metadata binded into system message."),
|
|
39218
|
+
type: v.string().optional().describe("Represents type of the message.")
|
|
39219
|
+
}).optional().describe("System represents domain structure for system event messages."),
|
|
39220
|
+
type: v.int().optional()
|
|
39221
|
+
}).describe("UpdatedMessage is what a client needs to render or re-render a message bubble.")).optional().describe("New or changed messages in their current state; upsert by id."),
|
|
39222
|
+
read_states: v.array(v.object({
|
|
39223
|
+
delivered_up_to_seq: v.string().optional(),
|
|
39224
|
+
member: v.object({
|
|
39225
|
+
contact: v.object({
|
|
39226
|
+
app_id: v.string().optional().describe("Identifier of the specific integration app or bot."),
|
|
39227
|
+
created_at: v.string().optional().describe("Record creation timestamp (Unix Epoch in milliseconds)."),
|
|
39228
|
+
is_bot: v.boolean().optional().describe("Represents if usere is real person or automatic script."),
|
|
39229
|
+
iss: v.string().optional().describe("Provider-specific unique identifier (Issuer ID)."),
|
|
39230
|
+
metadata: v.record(v.string(), v.string()).optional().describe("Additional dynamic attributes provided by the messenger."),
|
|
39231
|
+
name: v.string().optional().describe("Display name of the contact."),
|
|
39232
|
+
sub: v.string().optional().describe("Associated internal system subject/identifier."),
|
|
39233
|
+
type: v.string().optional().describe("Channel type (e.g., 'webchat', 'telegram')."),
|
|
39234
|
+
updated_at: v.string().optional().describe("Last record update timestamp (Unix Epoch in milliseconds)."),
|
|
39235
|
+
username: v.string().optional().describe("Technical username or handle."),
|
|
39236
|
+
vias: v.array(v.object({
|
|
39237
|
+
contact_id: v.string().optional(),
|
|
39238
|
+
created_at: v.string().optional(),
|
|
39239
|
+
disable: v.boolean().optional(),
|
|
39240
|
+
disable_reason: v.string().optional(),
|
|
39241
|
+
metadata: v.looseObject({}).optional(),
|
|
39242
|
+
updated_at: v.string().optional(),
|
|
39243
|
+
via: v.string().optional()
|
|
39244
|
+
})).optional()
|
|
39245
|
+
}).optional().describe("Contact represents an external messaging identity."),
|
|
39246
|
+
id: v.string().optional(),
|
|
39247
|
+
permissions: v.object({
|
|
39248
|
+
can_add_members: v.boolean().optional(),
|
|
39249
|
+
can_change_members_permissions: v.boolean().optional(),
|
|
39250
|
+
can_change_thread_info: v.boolean().optional(),
|
|
39251
|
+
can_delete_messages: v.boolean().optional(),
|
|
39252
|
+
can_remove_members: v.boolean().optional(),
|
|
39253
|
+
can_send_messages: v.boolean().optional(),
|
|
39254
|
+
created_at: v.string().optional(),
|
|
39255
|
+
id: v.string().optional(),
|
|
39256
|
+
member_id: v.string().optional(),
|
|
39257
|
+
updated_at: v.string().optional()
|
|
39258
|
+
}).optional(),
|
|
39259
|
+
role: v.enum([
|
|
39260
|
+
"ROLE_UNSPECIFIED",
|
|
39261
|
+
"ROLE_MEMBER",
|
|
39262
|
+
"ROLE_ADMIN",
|
|
39263
|
+
"ROLE_OWNER",
|
|
39264
|
+
"ROLE_SUPERVISOR"
|
|
39265
|
+
]).default("ROLE_UNSPECIFIED")
|
|
39266
|
+
}).optional().describe("The member, in the same shape as history's sender; set by GetUpdates."),
|
|
39267
|
+
member_id: v.string().optional(),
|
|
39268
|
+
read_up_to_seq: v.string().optional()
|
|
39269
|
+
}).describe("MemberReadState is one member's delivery/read horizon in a thread, as\nper-thread message seq (0 = nothing reached that state yet).")).optional().describe("Delivery/read horizons in message seq."),
|
|
39270
|
+
thread_id: v.string().optional(),
|
|
39271
|
+
top_message: v.object({
|
|
39272
|
+
body: v.string().optional(),
|
|
39273
|
+
contact: v.object({
|
|
39274
|
+
email: v.string().optional(),
|
|
39275
|
+
name: v.string().optional(),
|
|
39276
|
+
phone: v.string().optional()
|
|
39277
|
+
}).optional(),
|
|
39278
|
+
created_at: v.string().optional(),
|
|
39279
|
+
documents: v.array(v.object({
|
|
39280
|
+
created_at: v.string().optional().describe("Creation timestamp (Unix time, milliseconds)."),
|
|
39281
|
+
file_id: v.string().optional().describe("File storage identifier."),
|
|
39282
|
+
id: v.string().optional().describe("Document identifier."),
|
|
39283
|
+
message_id: v.string().optional().describe("Identifier of the message this document belongs to."),
|
|
39284
|
+
mime: v.string().optional().describe("MIME type of the document."),
|
|
39285
|
+
name: v.string().optional().describe("Original file name."),
|
|
39286
|
+
size: v.string().optional().describe("File size in bytes."),
|
|
39287
|
+
url: v.string().optional().describe("Public signed URL for downloading the document.")
|
|
39288
|
+
}).describe("Document represents a file attachment\nassociated with a message.")).optional(),
|
|
39289
|
+
edited_at: v.string().optional().describe("Set when the message was edited."),
|
|
39290
|
+
forward_origin: v.object({
|
|
39291
|
+
kind: v.enum([
|
|
39292
|
+
"FORWARD_ORIGIN_KIND_UNSPECIFIED",
|
|
39293
|
+
"FORWARD_ORIGIN_KIND_INTERNAL",
|
|
39294
|
+
"FORWARD_ORIGIN_KIND_EXTERNAL_USER",
|
|
39295
|
+
"FORWARD_ORIGIN_KIND_EXTERNAL_HIDDEN_USER",
|
|
39296
|
+
"FORWARD_ORIGIN_KIND_EXTERNAL_CHAT"
|
|
39297
|
+
]).default("FORWARD_ORIGIN_KIND_UNSPECIFIED").describe("ForwardOriginKind tells the client how to label a forwarded message and\nwhether the origin points at anything addressable inside Webitel.\n\n - FORWARD_ORIGIN_KIND_INTERNAL: Forwarded inside Webitel: sender_id and source_message_id are set.\n - FORWARD_ORIGIN_KIND_EXTERNAL_USER: Forwarded into the chat from an external messenger, author named.\n - FORWARD_ORIGIN_KIND_EXTERNAL_HIDDEN_USER: Same, but the author chose to hide their account, so there is no name.\n - FORWARD_ORIGIN_KIND_EXTERNAL_CHAT: Origin is an external group or channel rather than a person."),
|
|
39298
|
+
original_sent_at: v.string().optional().describe("When the original message was sent, Unix time in milliseconds."),
|
|
39299
|
+
sender_id: v.string().optional().describe("Contact id of the original author. Empty unless kind is INTERNAL."),
|
|
39300
|
+
sender_name: v.string().optional().describe("Display name of the original author — the \"from whom\" label."),
|
|
39301
|
+
source_message_id: v.string().optional().describe("Source message this copy was made from. Empty unless kind is INTERNAL,\nand cleared if the source is later purged.")
|
|
39302
|
+
}).optional().describe("ForwardOrigin is a snapshot of the original author taken at forward time.\nUnlike ReplyToMessage it carries no enriched ThreadMember: the original author\nis generally not a member of the chat the copy landed in, so sender_name is\nthe only label a client can rely on."),
|
|
39303
|
+
id: v.string().optional(),
|
|
39304
|
+
images: v.array(v.object({
|
|
39305
|
+
created_at: v.string().optional().describe("Creation timestamp (Unix time, milliseconds)."),
|
|
39306
|
+
file_id: v.string().optional().describe("File storage identifier."),
|
|
39307
|
+
height: v.int().optional().describe("Image height in pixels."),
|
|
39308
|
+
id: v.string().optional().describe("Image identifier."),
|
|
39309
|
+
message_id: v.string().optional().describe("Identifier of the message this message belongs to."),
|
|
39310
|
+
mime: v.string().optional().describe("MIME type of the image."),
|
|
39311
|
+
url: v.string().optional().describe("Public signed URL for accessing the image."),
|
|
39312
|
+
width: v.int().optional().describe("Image width in pixels.")
|
|
39313
|
+
}).describe("Image represents an image attachment\nassociated with a message.")).optional(),
|
|
39314
|
+
interactive: v.object({
|
|
39315
|
+
documents: v.object({ documents: v.array(v.object({
|
|
39316
|
+
file_name: v.string().optional(),
|
|
39317
|
+
id: v.string().optional(),
|
|
39318
|
+
mime_type: v.string().optional(),
|
|
39319
|
+
size_bytes: v.string().optional(),
|
|
39320
|
+
url: v.string().optional()
|
|
39321
|
+
}).describe("Represents `Document` message with necessary fields\nto process it into frequently used `document`\nentity in messaging systems.")).optional().describe("Documents to be attached to the header of interactive message.\nMax allowed documents: 10.") }).optional().describe("Document attachments header."),
|
|
39322
|
+
images: v.object({ images: v.array(v.object({
|
|
39323
|
+
id: v.string().optional(),
|
|
39324
|
+
link: v.string().optional(),
|
|
39325
|
+
mime_type: v.string().optional(),
|
|
39326
|
+
name: v.string().optional()
|
|
39327
|
+
}).describe("Represents `Image` entity with\nnecessary fields.")).optional().describe("Images to be attached to the header of interactive message.\nMax allowed images: 10.") }).optional().describe("Images attachment header."),
|
|
39328
|
+
input_field_state: v.enum([
|
|
39329
|
+
"INPUT_FIELD_STATE_UNSPECIFIED",
|
|
39330
|
+
"INPUT_FIELD_STATE_REGULAR",
|
|
39331
|
+
"INPUT_FIELD_STATE_MINIMIZED",
|
|
39332
|
+
"INPUT_FIELD_STATE_HIDDEN"
|
|
39333
|
+
]).default("INPUT_FIELD_STATE_UNSPECIFIED").describe("Whether the recipient may still type while this menu is displayed."),
|
|
39334
|
+
list_reply: v.object({
|
|
39335
|
+
main_button_title: v.string().optional().describe("Title of the main button, that on-click show up list."),
|
|
39336
|
+
sections: v.array(v.object({
|
|
39337
|
+
buttons: v.array(v.object({
|
|
39338
|
+
callback: v.object({ data: v.string().optional().describe("Opaque data payload passed back to the server upon interaction.") }).optional().describe("Triggers a backend event (callback) with associated metadata."),
|
|
39339
|
+
id: v.string().optional().describe("Unique idempotent identifier for the button.\nUsed by the frontend to track state and prevent duplicate interactions."),
|
|
39340
|
+
label: v.string().optional().describe("The human-readable label displayed on the button."),
|
|
39341
|
+
metadata: v.looseObject({}).optional().describe("Extensible metadata for UI/UX styling (e.g., \"color\", \"theme\", \"size\").\nUsage: Allows for future-proofing without breaking schema changes."),
|
|
39342
|
+
request: v.object({ action: v.string().optional().describe("The specific action to be performed by the client application.") }).optional().describe("Requests sensitive information from the client (e.g., location or contact)."),
|
|
39343
|
+
url: v.object({ url: v.string().optional().describe("Must be a valid absolute URI (e.g., https://example.com).") }).optional().describe("Directs the user to an external web resource.")
|
|
39344
|
+
}).describe("Defines a single interactive element within the keyboard.\nEach button must have a unique identifier and a specific action type.")).optional().describe("Collection of buttons within this section.\nMinimum of 1 button is required to prevent empty sections."),
|
|
39345
|
+
section: v.string().optional().describe("The header text for this section. Must be concise and descriptive.")
|
|
39346
|
+
}).describe("Represents a row of buttons grouped under a specific logical section header.\nUseful for creating categorized menus or structured interactive interfaces.")).optional().describe("List with sections with buttons.")
|
|
39347
|
+
}).optional().describe("List reply with main list button text and sections with buttons."),
|
|
39348
|
+
markup: v.object({ rows: v.array(v.object({ buttons: v.array(v.object({
|
|
39349
|
+
callback: v.object({ data: v.string().optional().describe("Opaque data payload passed back to the server upon interaction.") }).optional().describe("Triggers a backend event (callback) with associated metadata."),
|
|
39350
|
+
id: v.string().optional().describe("Unique idempotent identifier for the button.\nUsed by the frontend to track state and prevent duplicate interactions."),
|
|
39351
|
+
label: v.string().optional().describe("The human-readable label displayed on the button."),
|
|
39352
|
+
metadata: v.looseObject({}).optional().describe("Extensible metadata for UI/UX styling (e.g., \"color\", \"theme\", \"size\").\nUsage: Allows for future-proofing without breaking schema changes."),
|
|
39353
|
+
request: v.object({ action: v.string().optional().describe("The specific action to be performed by the client application.") }).optional().describe("Requests sensitive information from the client (e.g., location or contact)."),
|
|
39354
|
+
url: v.object({ url: v.string().optional().describe("Must be a valid absolute URI (e.g., https://example.com).") }).optional().describe("Directs the user to an external web resource.")
|
|
39355
|
+
}).describe("Defines a single interactive element within the keyboard.\nEach button must have a unique identifier and a specific action type.")).optional().describe("Horizontal collection of buttons.\nCapped at 10 to ensure UI responsiveness and prevent overflow.") }).describe("A standard horizontal row of interactive buttons without a section header.")).optional().describe("Rows of buttons matrix.") }).optional().describe("Markup matrix with buttons."),
|
|
39356
|
+
placement: v.enum([
|
|
39357
|
+
"MENU_PLACEMENT_UNSPECIFIED",
|
|
39358
|
+
"MENU_PLACEMENT_INLINE",
|
|
39359
|
+
"MENU_PLACEMENT_PERSISTENT"
|
|
39360
|
+
]).default("MENU_PLACEMENT_UNSPECIFIED").describe("Where the menu is rendered. Channels that only support one placement ignore it."),
|
|
39361
|
+
single_use: v.boolean().optional().describe("Force to block user keyboard.")
|
|
39362
|
+
}).optional().describe("Interactive represents a rich message with UI elements."),
|
|
39363
|
+
location: v.object({
|
|
39364
|
+
address: v.string().optional(),
|
|
39365
|
+
latitude: v.number().optional(),
|
|
39366
|
+
longitude: v.number().optional(),
|
|
39367
|
+
name: v.string().optional()
|
|
39368
|
+
}).optional(),
|
|
39369
|
+
metadata: v.looseObject({}).optional(),
|
|
39370
|
+
reactions: v.array(v.object({
|
|
39371
|
+
count: v.int().optional().describe("Number of members currently holding this reaction."),
|
|
39372
|
+
emoji: v.string().optional().describe("Unicode emoji this reaction aggregates."),
|
|
39373
|
+
last_reacted_at: v.string().optional().describe("Unix time in milliseconds of the most recent reaction with this emoji."),
|
|
39374
|
+
reacted_by_me: v.boolean().optional().describe("True when the requesting caller is one of the reactors."),
|
|
39375
|
+
reactor_ids: v.array(v.string()).optional().describe("Capped sample of reactor contact ids (for UI); not necessarily all of them.")
|
|
39376
|
+
}).describe("MessageReaction is one emoji aggregate on a history message.")).optional(),
|
|
39377
|
+
reply_to: v.object({
|
|
39378
|
+
attachment_address: v.string().optional(),
|
|
39379
|
+
attachment_kind: v.string().optional(),
|
|
39380
|
+
attachment_mime: v.string().optional(),
|
|
39381
|
+
attachment_name: v.string().optional(),
|
|
39382
|
+
body: v.string().optional(),
|
|
39383
|
+
created_at: v.string().optional(),
|
|
39384
|
+
is_deleted: v.boolean().optional(),
|
|
39385
|
+
message_id: v.string().optional(),
|
|
39386
|
+
sender: v.object({
|
|
39387
|
+
contact: v.object({
|
|
39388
|
+
app_id: v.string().optional().describe("Identifier of the specific integration app or bot."),
|
|
39389
|
+
created_at: v.string().optional().describe("Record creation timestamp (Unix Epoch in milliseconds)."),
|
|
39390
|
+
is_bot: v.boolean().optional().describe("Represents if usere is real person or automatic script."),
|
|
39391
|
+
iss: v.string().optional().describe("Provider-specific unique identifier (Issuer ID)."),
|
|
39392
|
+
metadata: v.record(v.string(), v.string()).optional().describe("Additional dynamic attributes provided by the messenger."),
|
|
39393
|
+
name: v.string().optional().describe("Display name of the contact."),
|
|
39394
|
+
sub: v.string().optional().describe("Associated internal system subject/identifier."),
|
|
39395
|
+
type: v.string().optional().describe("Channel type (e.g., 'webchat', 'telegram')."),
|
|
39396
|
+
updated_at: v.string().optional().describe("Last record update timestamp (Unix Epoch in milliseconds)."),
|
|
39397
|
+
username: v.string().optional().describe("Technical username or handle."),
|
|
39398
|
+
vias: v.array(v.object({
|
|
39399
|
+
contact_id: v.string().optional(),
|
|
39400
|
+
created_at: v.string().optional(),
|
|
39401
|
+
disable: v.boolean().optional(),
|
|
39402
|
+
disable_reason: v.string().optional(),
|
|
39403
|
+
metadata: v.looseObject({}).optional(),
|
|
39404
|
+
updated_at: v.string().optional(),
|
|
39405
|
+
via: v.string().optional()
|
|
39406
|
+
})).optional()
|
|
39407
|
+
}).optional().describe("Contact represents an external messaging identity."),
|
|
39408
|
+
id: v.string().optional(),
|
|
39409
|
+
permissions: v.object({
|
|
39410
|
+
can_add_members: v.boolean().optional(),
|
|
39411
|
+
can_change_members_permissions: v.boolean().optional(),
|
|
39412
|
+
can_change_thread_info: v.boolean().optional(),
|
|
39413
|
+
can_delete_messages: v.boolean().optional(),
|
|
39414
|
+
can_remove_members: v.boolean().optional(),
|
|
39415
|
+
can_send_messages: v.boolean().optional(),
|
|
39416
|
+
created_at: v.string().optional(),
|
|
39417
|
+
id: v.string().optional(),
|
|
39418
|
+
member_id: v.string().optional(),
|
|
39419
|
+
updated_at: v.string().optional()
|
|
39420
|
+
}).optional(),
|
|
39421
|
+
role: v.enum([
|
|
39422
|
+
"ROLE_UNSPECIFIED",
|
|
39423
|
+
"ROLE_MEMBER",
|
|
39424
|
+
"ROLE_ADMIN",
|
|
39425
|
+
"ROLE_OWNER",
|
|
39426
|
+
"ROLE_SUPERVISOR"
|
|
39427
|
+
]).default("ROLE_UNSPECIFIED")
|
|
39428
|
+
}).optional().describe("ThreadMember represents a thread participant\nwith optional type-specific settings."),
|
|
39429
|
+
sender_id: v.string().optional(),
|
|
39430
|
+
type: v.string().optional().describe("Kind of the quoted message: text, document, image, system, interactive,\nlocation or contact.")
|
|
39431
|
+
}).optional(),
|
|
39432
|
+
sender: v.object({
|
|
39433
|
+
contact: v.object({
|
|
39434
|
+
app_id: v.string().optional().describe("Identifier of the specific integration app or bot."),
|
|
39435
|
+
created_at: v.string().optional().describe("Record creation timestamp (Unix Epoch in milliseconds)."),
|
|
39436
|
+
is_bot: v.boolean().optional().describe("Represents if usere is real person or automatic script."),
|
|
39437
|
+
iss: v.string().optional().describe("Provider-specific unique identifier (Issuer ID)."),
|
|
39438
|
+
metadata: v.record(v.string(), v.string()).optional().describe("Additional dynamic attributes provided by the messenger."),
|
|
39439
|
+
name: v.string().optional().describe("Display name of the contact."),
|
|
39440
|
+
sub: v.string().optional().describe("Associated internal system subject/identifier."),
|
|
39441
|
+
type: v.string().optional().describe("Channel type (e.g., 'webchat', 'telegram')."),
|
|
39442
|
+
updated_at: v.string().optional().describe("Last record update timestamp (Unix Epoch in milliseconds)."),
|
|
39443
|
+
username: v.string().optional().describe("Technical username or handle."),
|
|
39444
|
+
vias: v.array(v.object({
|
|
39445
|
+
contact_id: v.string().optional(),
|
|
39446
|
+
created_at: v.string().optional(),
|
|
39447
|
+
disable: v.boolean().optional(),
|
|
39448
|
+
disable_reason: v.string().optional(),
|
|
39449
|
+
metadata: v.looseObject({}).optional(),
|
|
39450
|
+
updated_at: v.string().optional(),
|
|
39451
|
+
via: v.string().optional()
|
|
39452
|
+
})).optional()
|
|
39453
|
+
}).optional().describe("Contact represents an external messaging identity."),
|
|
39454
|
+
id: v.string().optional(),
|
|
39455
|
+
permissions: v.object({
|
|
39456
|
+
can_add_members: v.boolean().optional(),
|
|
39457
|
+
can_change_members_permissions: v.boolean().optional(),
|
|
39458
|
+
can_change_thread_info: v.boolean().optional(),
|
|
39459
|
+
can_delete_messages: v.boolean().optional(),
|
|
39460
|
+
can_remove_members: v.boolean().optional(),
|
|
39461
|
+
can_send_messages: v.boolean().optional(),
|
|
39462
|
+
created_at: v.string().optional(),
|
|
39463
|
+
id: v.string().optional(),
|
|
39464
|
+
member_id: v.string().optional(),
|
|
39465
|
+
updated_at: v.string().optional()
|
|
39466
|
+
}).optional(),
|
|
39467
|
+
role: v.enum([
|
|
39468
|
+
"ROLE_UNSPECIFIED",
|
|
39469
|
+
"ROLE_MEMBER",
|
|
39470
|
+
"ROLE_ADMIN",
|
|
39471
|
+
"ROLE_OWNER",
|
|
39472
|
+
"ROLE_SUPERVISOR"
|
|
39473
|
+
]).default("ROLE_UNSPECIFIED")
|
|
39474
|
+
}).optional().describe("ThreadMember represents a thread participant\nwith optional type-specific settings."),
|
|
39475
|
+
seq: v.string().optional(),
|
|
39476
|
+
system: v.object({
|
|
39477
|
+
message_id: v.string().optional().describe("ID of message for which system messages is binded."),
|
|
39478
|
+
metadata: v.looseObject({}).optional().describe("Represents additional metadata binded into system message."),
|
|
39479
|
+
type: v.string().optional().describe("Represents type of the message.")
|
|
39480
|
+
}).optional().describe("System represents domain structure for system event messages."),
|
|
39481
|
+
type: v.int().optional()
|
|
39482
|
+
}).optional().describe("Newest message for the list preview; set with dialog."),
|
|
39483
|
+
unread_count: v.string().optional()
|
|
39484
|
+
})).optional().describe("Only threads that changed.")
|
|
38153
39485
|
}), v.object({ gate_id: v.string() }), v.looseObject({}), v.object({ gate_id: v.string() }), v.object({ payload: v.string().optional() }), v.looseObject({}), v.object({ gate_id: v.string() }), v.looseObject({}), v.object({ gate_id: v.string() }), v.object({
|
|
38154
39486
|
composer_input_disabled: v.boolean().optional(),
|
|
38155
39487
|
items: v.array(v.object({
|