@wix/auto_sdk_blog_posts 1.0.172 → 1.0.174

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. package/build/cjs/index.d.ts +15 -11
  2. package/build/cjs/index.js +65 -25
  3. package/build/cjs/index.js.map +1 -1
  4. package/build/cjs/index.typings.d.ts +136 -24
  5. package/build/cjs/index.typings.js +44 -9
  6. package/build/cjs/index.typings.js.map +1 -1
  7. package/build/cjs/meta.d.ts +106 -2
  8. package/build/cjs/meta.js +37 -0
  9. package/build/cjs/meta.js.map +1 -1
  10. package/build/cjs/schemas.d.ts +84 -82
  11. package/build/cjs/schemas.js +167 -161
  12. package/build/cjs/schemas.js.map +1 -1
  13. package/build/es/index.d.mts +15 -11
  14. package/build/es/index.mjs +63 -25
  15. package/build/es/index.mjs.map +1 -1
  16. package/build/es/index.typings.d.mts +136 -24
  17. package/build/es/index.typings.mjs +42 -9
  18. package/build/es/index.typings.mjs.map +1 -1
  19. package/build/es/meta.d.mts +106 -2
  20. package/build/es/meta.mjs +35 -0
  21. package/build/es/meta.mjs.map +1 -1
  22. package/build/es/schemas.d.mts +84 -82
  23. package/build/es/schemas.mjs +167 -161
  24. package/build/es/schemas.mjs.map +1 -1
  25. package/build/internal/cjs/index.d.ts +15 -11
  26. package/build/internal/cjs/index.js +65 -25
  27. package/build/internal/cjs/index.js.map +1 -1
  28. package/build/internal/cjs/index.typings.d.ts +136 -24
  29. package/build/internal/cjs/index.typings.js +44 -9
  30. package/build/internal/cjs/index.typings.js.map +1 -1
  31. package/build/internal/cjs/meta.d.ts +106 -2
  32. package/build/internal/cjs/meta.js +37 -0
  33. package/build/internal/cjs/meta.js.map +1 -1
  34. package/build/internal/cjs/schemas.d.ts +84 -82
  35. package/build/internal/cjs/schemas.js +167 -161
  36. package/build/internal/cjs/schemas.js.map +1 -1
  37. package/build/internal/es/index.d.mts +15 -11
  38. package/build/internal/es/index.mjs +63 -25
  39. package/build/internal/es/index.mjs.map +1 -1
  40. package/build/internal/es/index.typings.d.mts +136 -24
  41. package/build/internal/es/index.typings.mjs +42 -9
  42. package/build/internal/es/index.typings.mjs.map +1 -1
  43. package/build/internal/es/meta.d.mts +106 -2
  44. package/build/internal/es/meta.mjs +35 -0
  45. package/build/internal/es/meta.mjs.map +1 -1
  46. package/build/internal/es/schemas.d.mts +84 -82
  47. package/build/internal/es/schemas.mjs +167 -161
  48. package/build/internal/es/schemas.mjs.map +1 -1
  49. package/package.json +2 -2
@@ -43,89 +43,91 @@ declare const GetPostRequest: z.ZodObject<{
43
43
  }, z.core.$strip>>;
44
44
  }, z.core.$strip>;
45
45
  declare const GetPostResponse: z.ZodObject<{
46
- _id: z.ZodOptional<z.ZodString>;
47
- title: z.ZodOptional<z.ZodString>;
48
- excerpt: z.ZodOptional<z.ZodString>;
49
- contentText: z.ZodNullable<z.ZodOptional<z.ZodString>>;
50
- firstPublishedDate: z.ZodNullable<z.ZodOptional<z.ZodDate>>;
51
- lastPublishedDate: z.ZodNullable<z.ZodOptional<z.ZodDate>>;
52
- url: z.ZodOptional<z.ZodString>;
53
- slug: z.ZodOptional<z.ZodString>;
54
- featured: z.ZodOptional<z.ZodBoolean>;
55
- pinned: z.ZodOptional<z.ZodBoolean>;
56
- categoryIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
57
- memberId: z.ZodOptional<z.ZodString>;
58
- hashtags: z.ZodOptional<z.ZodArray<z.ZodString>>;
59
- commentingEnabled: z.ZodOptional<z.ZodBoolean>;
60
- minutesToRead: z.ZodOptional<z.ZodNumber>;
61
- heroImage: z.ZodOptional<z.ZodString>;
62
- tagIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
63
- relatedPostIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
64
- pricingPlanIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
65
- translationId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
66
- language: z.ZodNullable<z.ZodOptional<z.ZodString>>;
67
- seoData: z.ZodOptional<z.ZodObject<{
68
- tags: z.ZodOptional<z.ZodArray<z.ZodObject<{
69
- type: z.ZodOptional<z.ZodString>;
70
- props: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>>;
71
- meta: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>>;
72
- children: z.ZodOptional<z.ZodString>;
73
- custom: z.ZodOptional<z.ZodBoolean>;
74
- disabled: z.ZodOptional<z.ZodBoolean>;
75
- }, z.core.$strip>>>;
76
- settings: z.ZodOptional<z.ZodObject<{
77
- preventAutoRedirect: z.ZodOptional<z.ZodBoolean>;
78
- keywords: z.ZodOptional<z.ZodArray<z.ZodObject<{
79
- term: z.ZodOptional<z.ZodString>;
80
- isMain: z.ZodOptional<z.ZodBoolean>;
81
- origin: z.ZodNullable<z.ZodOptional<z.ZodString>>;
46
+ post: z.ZodOptional<z.ZodObject<{
47
+ _id: z.ZodOptional<z.ZodString>;
48
+ title: z.ZodOptional<z.ZodString>;
49
+ excerpt: z.ZodOptional<z.ZodString>;
50
+ contentText: z.ZodNullable<z.ZodOptional<z.ZodString>>;
51
+ firstPublishedDate: z.ZodNullable<z.ZodOptional<z.ZodDate>>;
52
+ lastPublishedDate: z.ZodNullable<z.ZodOptional<z.ZodDate>>;
53
+ url: z.ZodOptional<z.ZodString>;
54
+ slug: z.ZodOptional<z.ZodString>;
55
+ featured: z.ZodOptional<z.ZodBoolean>;
56
+ pinned: z.ZodOptional<z.ZodBoolean>;
57
+ categoryIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
58
+ memberId: z.ZodOptional<z.ZodString>;
59
+ hashtags: z.ZodOptional<z.ZodArray<z.ZodString>>;
60
+ commentingEnabled: z.ZodOptional<z.ZodBoolean>;
61
+ minutesToRead: z.ZodOptional<z.ZodNumber>;
62
+ heroImage: z.ZodOptional<z.ZodString>;
63
+ tagIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
64
+ relatedPostIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
65
+ pricingPlanIds: z.ZodOptional<z.ZodArray<z.ZodString>>;
66
+ translationId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
67
+ language: z.ZodNullable<z.ZodOptional<z.ZodString>>;
68
+ seoData: z.ZodOptional<z.ZodObject<{
69
+ tags: z.ZodOptional<z.ZodArray<z.ZodObject<{
70
+ type: z.ZodOptional<z.ZodString>;
71
+ props: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>>;
72
+ meta: z.ZodNullable<z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>>;
73
+ children: z.ZodOptional<z.ZodString>;
74
+ custom: z.ZodOptional<z.ZodBoolean>;
75
+ disabled: z.ZodOptional<z.ZodBoolean>;
82
76
  }, z.core.$strip>>>;
77
+ settings: z.ZodOptional<z.ZodObject<{
78
+ preventAutoRedirect: z.ZodOptional<z.ZodBoolean>;
79
+ keywords: z.ZodOptional<z.ZodArray<z.ZodObject<{
80
+ term: z.ZodOptional<z.ZodString>;
81
+ isMain: z.ZodOptional<z.ZodBoolean>;
82
+ origin: z.ZodNullable<z.ZodOptional<z.ZodString>>;
83
+ }, z.core.$strip>>>;
84
+ }, z.core.$strip>>;
83
85
  }, z.core.$strip>>;
86
+ contactId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
87
+ richContent: z.ZodOptional<z.ZodAny>;
88
+ preview: z.ZodOptional<z.ZodBoolean>;
89
+ moderationDetails: z.ZodOptional<z.ZodObject<{
90
+ submittedBy: z.ZodOptional<z.ZodString>;
91
+ submittedDate: z.ZodNullable<z.ZodOptional<z.ZodDate>>;
92
+ status: z.ZodOptional<z.ZodEnum<{
93
+ UNKNOWN: "UNKNOWN";
94
+ APPROVED: "APPROVED";
95
+ REJECTED: "REJECTED";
96
+ }>>;
97
+ moderatedBy: z.ZodNullable<z.ZodOptional<z.ZodString>>;
98
+ moderationDate: z.ZodNullable<z.ZodOptional<z.ZodDate>>;
99
+ }, z.core.$strip>>;
100
+ media: z.ZodOptional<z.ZodIntersection<z.ZodObject<{
101
+ displayed: z.ZodOptional<z.ZodBoolean>;
102
+ custom: z.ZodOptional<z.ZodBoolean>;
103
+ altText: z.ZodNullable<z.ZodOptional<z.ZodString>>;
104
+ }, z.core.$strip>, z.ZodXor<readonly [z.ZodObject<{
105
+ wixMedia: z.ZodOptional<z.ZodNever>;
106
+ embedMedia: z.ZodOptional<z.ZodNever>;
107
+ }, z.core.$strip>, z.ZodObject<{
108
+ embedMedia: z.ZodOptional<z.ZodNever>;
109
+ wixMedia: z.ZodObject<{
110
+ image: z.ZodOptional<z.ZodString>;
111
+ videoV2: z.ZodOptional<z.ZodString>;
112
+ }, z.core.$strip>;
113
+ }, z.core.$strip>, z.ZodObject<{
114
+ wixMedia: z.ZodOptional<z.ZodNever>;
115
+ embedMedia: z.ZodObject<{
116
+ thumbnail: z.ZodOptional<z.ZodObject<{
117
+ url: z.ZodOptional<z.ZodString>;
118
+ width: z.ZodOptional<z.ZodNumber>;
119
+ height: z.ZodOptional<z.ZodNumber>;
120
+ }, z.core.$strip>>;
121
+ video: z.ZodOptional<z.ZodObject<{
122
+ url: z.ZodOptional<z.ZodString>;
123
+ width: z.ZodOptional<z.ZodNumber>;
124
+ height: z.ZodOptional<z.ZodNumber>;
125
+ }, z.core.$strip>>;
126
+ }, z.core.$strip>;
127
+ }, z.core.$strip>]>>>;
128
+ hasUnpublishedChanges: z.ZodOptional<z.ZodBoolean>;
129
+ referenceId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
84
130
  }, z.core.$strip>>;
85
- contactId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
86
- richContent: z.ZodOptional<z.ZodAny>;
87
- preview: z.ZodOptional<z.ZodBoolean>;
88
- moderationDetails: z.ZodOptional<z.ZodObject<{
89
- submittedBy: z.ZodOptional<z.ZodString>;
90
- submittedDate: z.ZodNullable<z.ZodOptional<z.ZodDate>>;
91
- status: z.ZodOptional<z.ZodEnum<{
92
- UNKNOWN: "UNKNOWN";
93
- APPROVED: "APPROVED";
94
- REJECTED: "REJECTED";
95
- }>>;
96
- moderatedBy: z.ZodNullable<z.ZodOptional<z.ZodString>>;
97
- moderationDate: z.ZodNullable<z.ZodOptional<z.ZodDate>>;
98
- }, z.core.$strip>>;
99
- media: z.ZodOptional<z.ZodIntersection<z.ZodObject<{
100
- displayed: z.ZodOptional<z.ZodBoolean>;
101
- custom: z.ZodOptional<z.ZodBoolean>;
102
- altText: z.ZodNullable<z.ZodOptional<z.ZodString>>;
103
- }, z.core.$strip>, z.ZodXor<readonly [z.ZodObject<{
104
- wixMedia: z.ZodOptional<z.ZodNever>;
105
- embedMedia: z.ZodOptional<z.ZodNever>;
106
- }, z.core.$strip>, z.ZodObject<{
107
- embedMedia: z.ZodOptional<z.ZodNever>;
108
- wixMedia: z.ZodObject<{
109
- image: z.ZodOptional<z.ZodString>;
110
- videoV2: z.ZodOptional<z.ZodString>;
111
- }, z.core.$strip>;
112
- }, z.core.$strip>, z.ZodObject<{
113
- wixMedia: z.ZodOptional<z.ZodNever>;
114
- embedMedia: z.ZodObject<{
115
- thumbnail: z.ZodOptional<z.ZodObject<{
116
- url: z.ZodOptional<z.ZodString>;
117
- width: z.ZodOptional<z.ZodNumber>;
118
- height: z.ZodOptional<z.ZodNumber>;
119
- }, z.core.$strip>>;
120
- video: z.ZodOptional<z.ZodObject<{
121
- url: z.ZodOptional<z.ZodString>;
122
- width: z.ZodOptional<z.ZodNumber>;
123
- height: z.ZodOptional<z.ZodNumber>;
124
- }, z.core.$strip>>;
125
- }, z.core.$strip>;
126
- }, z.core.$strip>]>>>;
127
- hasUnpublishedChanges: z.ZodOptional<z.ZodBoolean>;
128
- referenceId: z.ZodNullable<z.ZodOptional<z.ZodString>>;
129
131
  }, z.core.$strip>;
130
132
  declare const GetPostBySlugRequest: z.ZodObject<{
131
133
  slug: z.ZodString;
@@ -464,11 +466,11 @@ declare const QueryPostsRequest: z.ZodObject<{
464
466
  fieldName: z.ZodOptional<z.ZodEnum<{
465
467
  slug: "slug";
466
468
  title: "title";
469
+ firstPublishedDate: "firstPublishedDate";
470
+ lastPublishedDate: "lastPublishedDate";
467
471
  featured: "featured";
468
472
  pinned: "pinned";
469
473
  commentingEnabled: "commentingEnabled";
470
- firstPublishedDate: "firstPublishedDate";
471
- lastPublishedDate: "lastPublishedDate";
472
474
  }>>;
473
475
  order: z.ZodOptional<z.ZodEnum<{
474
476
  ASC: "ASC";
@@ -1,6 +1,6 @@
1
1
  // src/blog-v3-post-posts.schemas.ts
2
2
  import * as z from "zod";
3
- var QueryPostCountStatsRequest = z.object({
3
+ var QueryPostCountStatsRequest = /* @__PURE__ */ z.object({
4
4
  options: z.object({
5
5
  rangeStart: z.date().describe(
6
6
  "Start of time range to return, in [ISO 8601](https://en.wikipedia.org/wiki/ISO_8601) date and time format."
@@ -13,9 +13,9 @@ var QueryPostCountStatsRequest = z.object({
13
13
  timeZone: z.string().describe(
14
14
  "Time zone to use when calculating the start of the month.\n\n[UTC timezone offset](https://en.wikipedia.org/wiki/List_of_UTC_offsets) format. For example, New York time zone is `-05`."
15
15
  ).min(3).max(100).optional().nullable()
16
- }).optional()
16
+ }).describe("Options specifying time frame, sort, and filter. ").optional()
17
17
  });
18
- var QueryPostCountStatsResponse = z.object({
18
+ var QueryPostCountStatsResponse = /* @__PURE__ */ z.object({
19
19
  stats: z.array(
20
20
  z.object({
21
21
  periodStart: z.date().describe(
@@ -25,17 +25,17 @@ var QueryPostCountStatsResponse = z.object({
25
25
  })
26
26
  ).optional()
27
27
  });
28
- var GetTotalPostsRequest = z.object({
28
+ var GetTotalPostsRequest = /* @__PURE__ */ z.object({
29
29
  options: z.object({
30
30
  language: z.string().describe(
31
31
  "Language filter.\n\n2-or-4-letter language code in [IETF BCP 47 language tag](https://en.wikipedia.org/wiki/IETF_language_tag) format.\nPass a language to receive the total amount of posts in that specified language."
32
32
  ).optional().nullable()
33
- }).optional()
33
+ }).describe("Language Options.").optional()
34
34
  });
35
- var GetTotalPostsResponse = z.object({
35
+ var GetTotalPostsResponse = /* @__PURE__ */ z.object({
36
36
  total: z.number().int().describe("Total amount of published posts.").min(0).optional()
37
37
  });
38
- var GetPostRequest = z.object({
38
+ var GetPostRequest = /* @__PURE__ */ z.object({
39
39
  postId: z.string().describe("Post ID.").min(1).max(38),
40
40
  options: z.object({
41
41
  fieldsets: z.array(
@@ -50,163 +50,169 @@ var GetPostRequest = z.object({
50
50
  "REFERENCE_ID"
51
51
  ])
52
52
  ).max(20).optional()
53
- }).optional()
53
+ }).describe("Options specifying which fields to return.").optional()
54
54
  });
55
- var GetPostResponse = z.object({
56
- _id: z.string().describe("Post ID.").regex(
57
- /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,
58
- "Must be a valid GUID"
59
- ).optional(),
60
- title: z.string().describe("Post title.").max(200).optional(),
61
- excerpt: z.string().describe(
62
- "Post excerpt.\nCan be selected by a site contributor. By default, it is extracted from the content text's first characters.\n\nMax: 500 characters"
63
- ).max(500).optional(),
64
- contentText: z.string().describe("The post's content in plain text.").max(4e5).optional().nullable(),
65
- firstPublishedDate: z.date().describe("Date the post was first published.").optional().nullable(),
66
- lastPublishedDate: z.date().describe("Date the post was last published.").optional().nullable(),
67
- url: z.string().describe("Post URL.").optional(),
68
- slug: z.string().describe("Post slug. For example, `'post-slug'`.").max(100).optional(),
69
- featured: z.boolean().describe("Whether the post is marked as featured.").optional(),
70
- pinned: z.boolean().describe(
71
- "Whether the post is pinned. If `true`, the post is placed at the top of the post list."
72
- ).optional(),
73
- categoryIds: z.array(z.string()).max(10).optional(),
74
- memberId: z.string().describe("Member ID of the post's owner.").regex(
75
- /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,
76
- "Must be a valid GUID"
77
- ).optional(),
78
- hashtags: z.array(z.string()).max(100).optional(),
79
- commentingEnabled: z.boolean().describe("Whether commenting on the post is enabled.").optional(),
80
- minutesToRead: z.number().int().describe("Estimated reading time (calculated automatically).").optional(),
81
- heroImage: z.string().describe(
82
- "Image placed at the top of the blog page. Only displays on mobile devices."
83
- ).optional(),
84
- tagIds: z.array(z.string()).max(30).optional(),
85
- relatedPostIds: z.array(z.string()).max(3).optional(),
86
- pricingPlanIds: z.array(z.string()).max(100).optional(),
87
- translationId: z.string().describe(
88
- "ID of the translations of this post. All translations of a single post share the same `translationId`."
89
- ).regex(
90
- /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,
91
- "Must be a valid GUID"
92
- ).optional().nullable(),
93
- language: z.string().describe(
94
- "Language the post is written in.\n\n2-or-4-letter language code in [IETF BCP 47 language tag](https://en.wikipedia.org/wiki/IETF_language_tag) format."
95
- ).optional().nullable(),
96
- seoData: z.object({
97
- tags: z.array(
98
- z.object({
99
- type: z.string().describe(
100
- "SEO tag type.\n\n\nSupported values: `title`, `meta`, `script`, `link`."
101
- ).optional(),
102
- props: z.record(z.string(), z.any()).describe(
103
- 'A `{"key": "value"}` pair object where each SEO tag property (`"name"`, `"content"`, `"rel"`, `"href"`) contains a value.\nFor example: `{"name": "description", "content": "the description itself"}`.'
104
- ).optional().nullable(),
105
- meta: z.record(z.string(), z.any()).describe(
106
- 'SEO tag metadata. For example, `{"height": 300, "width": 240}`.'
107
- ).optional().nullable(),
108
- children: z.string().describe(
109
- "SEO tag inner content. For example, `<title> inner content </title>`."
110
- ).optional(),
111
- custom: z.boolean().describe(
112
- "Whether the tag is a [custom tag](https://support.wix.com/en/article/adding-additional-meta-tags-to-your-sites-pages) \u2014\ni.e. an entry from the site's Advanced/Custom Tags list.\n\nThis flag is scoped to that feature only. It is NOT an indicator of whether a standard tag\n(`title`, `description`, Open Graph, etc.) reflects a manually configured value versus a computed\ndefault/pattern \u2014 standard tags always resolve with `custom: false`, even when their content comes\nfrom a page's manually saved SEO title/description override. Don't use this field to verify whether\na live page reflects a manual per-page SEO edit.\n\nLimitation: when `ResolveStaticPageSeoTags` is called without `seoData`, the per-page SEO data is read\nonly from the Vibe/Wix-managed-headless override store. That store holds nothing for classic Wix Editor\nor Wix Studio pages, so even genuine Advanced/Custom Tags saved on those pages are missing from the\nresponse entirely \u2014 there, `false` means this API could not tell, not that no custom tag exists.\nPass `seoData` explicitly to resolve against a known set of tags."
113
- ).optional(),
114
- disabled: z.boolean().describe(
115
- "Whether the tag is disabled. If the tag is disabled, people can't find your page when searching for this phrase in search engines."
116
- ).optional()
117
- })
55
+ var GetPostResponse = /* @__PURE__ */ z.object({
56
+ post: z.object({
57
+ _id: z.string().describe("Post ID.").regex(
58
+ /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,
59
+ "Must be a valid GUID"
118
60
  ).optional(),
119
- settings: z.object({
120
- preventAutoRedirect: z.boolean().describe(
121
- "Whether the [automatical redirect visits](https://support.wix.com/en/article/customizing-your-pages-seo-settings-in-the-seo-panel) from the old URL to the new one is enabled.\n\n\nDefault: `false` (automatical redirect is enabled)."
122
- ).optional(),
123
- keywords: z.array(
124
- z.object({
125
- term: z.string().describe("Keyword value.").optional(),
126
- isMain: z.boolean().describe("Whether the keyword is the main focus keyword.").optional(),
127
- origin: z.string().describe(
128
- "The source that added the keyword terms to the SEO settings."
129
- ).max(1e3).optional().nullable()
130
- })
131
- ).max(5).optional()
132
- }).describe("SEO general settings.").optional()
133
- }).describe("SEO data.").optional(),
134
- contactId: z.string().describe(
135
- "Contact ID of the post's owner. See the Contacts API for more info."
136
- ).regex(
137
- /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,
138
- "Must be a valid GUID"
139
- ).optional().nullable(),
140
- richContent: z.any().describe(
141
- 'Post rich content\n\n<widget src="https://apps.wix.com/_serverless/ricos-playground-services/goto/api-component" plugins="image.gallery.video.audio.divider.linkButton.html.giphy.codeBlock.file.hashtag.lineSpacing.indent.link.textColor.textHighlight.heading.verticalEmbed.table.collapsibleList.poll" exampleid="72c23a25-524f-4f70-a260-4a2777b6f5d5">\n<a href="https://dev.wix.com/docs/ricos/api-reference/ricos-document">See Ricos document reference</a>\n</widget>'
142
- ).optional(),
143
- preview: z.boolean().describe(
144
- "Whether the returned content is a preview of premium content. Defaults to `false`.\nA preview displays a limited number of paragraphs of paid content to non-subscribed users."
145
- ).optional(),
146
- moderationDetails: z.object({
147
- submittedBy: z.string().describe(
148
- "Member ID of the person submitting the draft post for review."
149
- ).regex(
61
+ title: z.string().describe("Post title.").max(200).optional(),
62
+ excerpt: z.string().describe(
63
+ "Post excerpt.\nCan be selected by a site contributor. By default, it is extracted from the content text's first characters.\n\nMax: 500 characters"
64
+ ).max(500).optional(),
65
+ contentText: z.string().describe("The post's content in plain text.").max(4e5).optional().nullable(),
66
+ firstPublishedDate: z.date().describe("Date the post was first published.").optional().nullable(),
67
+ lastPublishedDate: z.date().describe("Date the post was last published.").optional().nullable(),
68
+ url: z.string().describe("Post URL.").optional(),
69
+ slug: z.string().describe("Post slug. For example, `'post-slug'`.").max(100).optional(),
70
+ featured: z.boolean().describe("Whether the post is marked as featured.").optional(),
71
+ pinned: z.boolean().describe(
72
+ "Whether the post is pinned. If `true`, the post is placed at the top of the post list."
73
+ ).optional(),
74
+ categoryIds: z.array(z.string()).max(10).optional(),
75
+ memberId: z.string().describe("Member ID of the post's owner.").regex(
150
76
  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,
151
77
  "Must be a valid GUID"
152
78
  ).optional(),
153
- submittedDate: z.date().describe("Date the post was submitted for review.").optional().nullable(),
154
- status: z.enum(["UNKNOWN", "APPROVED", "REJECTED"]).describe(
155
- "Status indicating whether the submission was approved or rejected by the moderator."
79
+ hashtags: z.array(z.string()).max(100).optional(),
80
+ commentingEnabled: z.boolean().describe("Whether commenting on the post is enabled.").optional(),
81
+ minutesToRead: z.number().int().describe("Estimated reading time (calculated automatically).").optional(),
82
+ heroImage: z.string().describe(
83
+ "Image placed at the top of the blog page. Only displays on mobile devices."
156
84
  ).optional(),
157
- moderatedBy: z.string().describe("Member ID of the person who approved or rejected the post.").regex(
85
+ tagIds: z.array(z.string()).max(30).optional(),
86
+ relatedPostIds: z.array(z.string()).max(3).optional(),
87
+ pricingPlanIds: z.array(z.string()).max(100).optional(),
88
+ translationId: z.string().describe(
89
+ "ID of the translations of this post. All translations of a single post share the same `translationId`."
90
+ ).regex(
158
91
  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,
159
92
  "Must be a valid GUID"
160
93
  ).optional().nullable(),
161
- moderationDate: z.date().describe("Date the post was approved or rejected.").optional().nullable()
162
- }).describe(
163
- "Post moderation details. Only relevant to posts submitted by [guest writers](https://support.wix.com/en/article/wix-blog-moderating-blog-posts-from-your-guest-writers).\n\nGuest writers have the ability to write posts but not publish them. These posts can be rejected or approved for publishing by a blog editor or Wix user."
164
- ).optional(),
165
- media: z.intersection(
166
- z.object({
167
- displayed: z.boolean().describe("Whether cover media is displayed.").optional(),
168
- custom: z.boolean().describe(
169
- "Whether custom cover media has been specified. If `false`, the first media item in the post's content serves as cover media."
94
+ language: z.string().describe(
95
+ "Language the post is written in.\n\n2-or-4-letter language code in [IETF BCP 47 language tag](https://en.wikipedia.org/wiki/IETF_language_tag) format."
96
+ ).optional().nullable(),
97
+ seoData: z.object({
98
+ tags: z.array(
99
+ z.object({
100
+ type: z.string().describe(
101
+ "SEO tag type.\n\n\nSupported values: `title`, `meta`, `script`, `link`."
102
+ ).optional(),
103
+ props: z.record(z.string(), z.any()).describe(
104
+ 'A `{"key": "value"}` pair object where each SEO tag property (`"name"`, `"content"`, `"rel"`, `"href"`) contains a value.\nFor example: `{"name": "description", "content": "the description itself"}`.'
105
+ ).optional().nullable(),
106
+ meta: z.record(z.string(), z.any()).describe(
107
+ 'SEO tag metadata. For example, `{"height": 300, "width": 240}`.'
108
+ ).optional().nullable(),
109
+ children: z.string().describe(
110
+ "SEO tag inner content. For example, `<title> inner content </title>`."
111
+ ).optional(),
112
+ custom: z.boolean().describe(
113
+ "Whether the tag is a [custom tag](https://support.wix.com/en/article/adding-additional-meta-tags-to-your-sites-pages) \u2014\ni.e. an entry from the site's Advanced/Custom Tags list.\n\nThis flag is scoped to that feature only. It is NOT an indicator of whether a standard tag\n(`title`, `description`, Open Graph, etc.) reflects a manually configured value versus a computed\ndefault/pattern \u2014 standard tags always resolve with `custom: false`, even when their content comes\nfrom a page's manually saved SEO title/description override. Don't use this field to verify whether\na live page reflects a manual per-page SEO edit.\n\nLimitation: when `ResolveStaticPageSeoTags` is called without `seoData`, the per-page SEO data is read\nonly from the Vibe/Wix-managed-headless override store. That store holds nothing for classic Wix Editor\nor Wix Studio pages, so even genuine Advanced/Custom Tags saved on those pages are missing from the\nresponse entirely \u2014 there, `false` means this API could not tell, not that no custom tag exists.\nPass `seoData` explicitly to resolve against a known set of tags."
114
+ ).optional(),
115
+ disabled: z.boolean().describe(
116
+ "Whether the tag is disabled. If the tag is disabled, people can't find your page when searching for this phrase in search engines."
117
+ ).optional()
118
+ })
170
119
  ).optional(),
171
- altText: z.string().describe("Media alternative text.").min(1).max(1e3).optional().nullable()
172
- }),
173
- z.xor([
174
- z.object({
175
- wixMedia: z.never().optional(),
176
- embedMedia: z.never().optional()
177
- }),
120
+ settings: z.object({
121
+ preventAutoRedirect: z.boolean().describe(
122
+ "Whether the [automatical redirect visits](https://support.wix.com/en/article/customizing-your-pages-seo-settings-in-the-seo-panel) from the old URL to the new one is enabled.\n\n\nDefault: `false` (automatical redirect is enabled)."
123
+ ).optional(),
124
+ keywords: z.array(
125
+ z.object({
126
+ term: z.string().describe("Keyword value.").optional(),
127
+ isMain: z.boolean().describe(
128
+ "Whether the keyword is the main focus keyword."
129
+ ).optional(),
130
+ origin: z.string().describe(
131
+ "The source that added the keyword terms to the SEO settings."
132
+ ).max(1e3).optional().nullable()
133
+ })
134
+ ).max(5).optional()
135
+ }).describe("SEO general settings.").optional()
136
+ }).describe("SEO data.").optional(),
137
+ contactId: z.string().describe(
138
+ "Contact ID of the post's owner. See the Contacts API for more info."
139
+ ).regex(
140
+ /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,
141
+ "Must be a valid GUID"
142
+ ).optional().nullable(),
143
+ richContent: z.any().describe(
144
+ 'Post rich content\n\n<widget src="https://apps.wix.com/_serverless/ricos-playground-services/goto/api-component" plugins="image.gallery.video.audio.divider.linkButton.html.giphy.codeBlock.file.hashtag.lineSpacing.indent.link.textColor.textHighlight.heading.verticalEmbed.table.collapsibleList.poll" exampleid="72c23a25-524f-4f70-a260-4a2777b6f5d5">\n<a href="https://dev.wix.com/docs/ricos/api-reference/ricos-document">See Ricos document reference</a>\n</widget>'
145
+ ).optional(),
146
+ preview: z.boolean().describe(
147
+ "Whether the returned content is a preview of premium content. Defaults to `false`.\nA preview displays a limited number of paragraphs of paid content to non-subscribed users."
148
+ ).optional(),
149
+ moderationDetails: z.object({
150
+ submittedBy: z.string().describe(
151
+ "Member ID of the person submitting the draft post for review."
152
+ ).regex(
153
+ /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,
154
+ "Must be a valid GUID"
155
+ ).optional(),
156
+ submittedDate: z.date().describe("Date the post was submitted for review.").optional().nullable(),
157
+ status: z.enum(["UNKNOWN", "APPROVED", "REJECTED"]).describe(
158
+ "Status indicating whether the submission was approved or rejected by the moderator."
159
+ ).optional(),
160
+ moderatedBy: z.string().describe(
161
+ "Member ID of the person who approved or rejected the post."
162
+ ).regex(
163
+ /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,
164
+ "Must be a valid GUID"
165
+ ).optional().nullable(),
166
+ moderationDate: z.date().describe("Date the post was approved or rejected.").optional().nullable()
167
+ }).describe(
168
+ "Post moderation details. Only relevant to posts submitted by [guest writers](https://support.wix.com/en/article/wix-blog-moderating-blog-posts-from-your-guest-writers).\n\nGuest writers have the ability to write posts but not publish them. These posts can be rejected or approved for publishing by a blog editor or Wix user."
169
+ ).optional(),
170
+ media: z.intersection(
178
171
  z.object({
179
- embedMedia: z.never().optional(),
180
- wixMedia: z.object({
181
- image: z.string().describe("Image details.").optional(),
182
- videoV2: z.string().describe("Video details.").optional()
183
- }).describe("Wix Media details.")
172
+ displayed: z.boolean().describe("Whether cover media is displayed.").optional(),
173
+ custom: z.boolean().describe(
174
+ "Whether custom cover media has been specified. If `false`, the first media item in the post's content serves as cover media."
175
+ ).optional(),
176
+ altText: z.string().describe("Media alternative text.").min(1).max(1e3).optional().nullable()
184
177
  }),
185
- z.object({
186
- wixMedia: z.never().optional(),
187
- embedMedia: z.object({
188
- thumbnail: z.object({
189
- url: z.string().describe("Thumbnail url.").max(2e3).optional(),
190
- width: z.number().int().describe("Thumbnail width.").min(0).optional(),
191
- height: z.number().int().describe("Thumbnail height.").min(0).optional()
192
- }).describe("Thumbnail details.").optional(),
193
- video: z.object({
194
- url: z.string().describe("Video url.").max(2e3).optional(),
195
- width: z.number().int().describe("Video width.").min(0).optional(),
196
- height: z.number().int().describe("Video height.").min(0).optional()
197
- }).describe("Video details.").optional()
198
- }).describe("Embed media details.")
199
- })
200
- ])
201
- ).describe("Post cover media.").optional(),
202
- hasUnpublishedChanges: z.boolean().describe(
203
- "Indicates if there is a draft post with changes that have not yet been published."
204
- ).optional(),
205
- referenceId: z.string().describe(
206
- "Post reference ID. You can reference the post from other entities, for example, comments."
207
- ).max(24).optional().nullable()
178
+ z.xor([
179
+ z.object({
180
+ wixMedia: z.never().optional(),
181
+ embedMedia: z.never().optional()
182
+ }),
183
+ z.object({
184
+ embedMedia: z.never().optional(),
185
+ wixMedia: z.object({
186
+ image: z.string().describe("Image details.").optional(),
187
+ videoV2: z.string().describe("Video details.").optional()
188
+ }).describe("Wix Media details.")
189
+ }),
190
+ z.object({
191
+ wixMedia: z.never().optional(),
192
+ embedMedia: z.object({
193
+ thumbnail: z.object({
194
+ url: z.string().describe("Thumbnail url.").max(2e3).optional(),
195
+ width: z.number().int().describe("Thumbnail width.").min(0).optional(),
196
+ height: z.number().int().describe("Thumbnail height.").min(0).optional()
197
+ }).describe("Thumbnail details.").optional(),
198
+ video: z.object({
199
+ url: z.string().describe("Video url.").max(2e3).optional(),
200
+ width: z.number().int().describe("Video width.").min(0).optional(),
201
+ height: z.number().int().describe("Video height.").min(0).optional()
202
+ }).describe("Video details.").optional()
203
+ }).describe("Embed media details.")
204
+ })
205
+ ])
206
+ ).describe("Post cover media.").optional(),
207
+ hasUnpublishedChanges: z.boolean().describe(
208
+ "Indicates if there is a draft post with changes that have not yet been published."
209
+ ).optional(),
210
+ referenceId: z.string().describe(
211
+ "Post reference ID. You can reference the post from other entities, for example, comments."
212
+ ).max(24).optional().nullable()
213
+ }).describe("Retrieved post info.").optional()
208
214
  });
209
- var GetPostBySlugRequest = z.object({
215
+ var GetPostBySlugRequest = /* @__PURE__ */ z.object({
210
216
  slug: z.string().describe("Slug of the post to retrieve.").min(1).max(200),
211
217
  options: z.object({
212
218
  fieldsets: z.array(
@@ -222,9 +228,9 @@ var GetPostBySlugRequest = z.object({
222
228
  ])
223
229
  ).max(20).optional(),
224
230
  language: z.string().describe("Language of the post.").optional().nullable()
225
- }).optional()
231
+ }).describe("Options specifying which fields to return.").optional()
226
232
  });
227
- var GetPostBySlugResponse = z.object({
233
+ var GetPostBySlugResponse = /* @__PURE__ */ z.object({
228
234
  post: z.object({
229
235
  _id: z.string().describe("Post ID.").regex(
230
236
  /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/,
@@ -384,7 +390,7 @@ var GetPostBySlugResponse = z.object({
384
390
  ).max(24).optional().nullable()
385
391
  }).describe("Retrieved post info.").optional()
386
392
  });
387
- var ListPostsRequest = z.object({
393
+ var ListPostsRequest = /* @__PURE__ */ z.object({
388
394
  options: z.object({
389
395
  featured: z.boolean().describe("Whether to return only featured posts.\n\nDefault: `false`").optional(),
390
396
  hashtags: z.array(z.string()).max(100).optional(),
@@ -427,9 +433,9 @@ var ListPostsRequest = z.object({
427
433
  "REFERENCE_ID"
428
434
  ])
429
435
  ).max(20).optional()
430
- }).optional()
436
+ }).describe("Sort, filter, and paging options.").optional()
431
437
  });
432
- var ListPostsResponse = z.object({
438
+ var ListPostsResponse = /* @__PURE__ */ z.object({
433
439
  posts: z.array(
434
440
  z.object({
435
441
  _id: z.string().describe("Post ID.").regex(
@@ -599,7 +605,7 @@ var ListPostsResponse = z.object({
599
605
  ).max(2e3).optional().nullable()
600
606
  }).describe("Details on the paged set of results returned.").optional()
601
607
  });
602
- var QueryPostsRequest = z.object({
608
+ var QueryPostsRequest = /* @__PURE__ */ z.object({
603
609
  query: z.object({
604
610
  filter: z.object({
605
611
  title: z.object({
@@ -718,9 +724,9 @@ var QueryPostsRequest = z.object({
718
724
  "REFERENCE_ID"
719
725
  ])
720
726
  ).max(20).optional()
721
- }).optional()
727
+ }).describe("Options specifying which fields to return.").optional()
722
728
  });
723
- var QueryPostsResponse = z.object({
729
+ var QueryPostsResponse = /* @__PURE__ */ z.object({
724
730
  posts: z.array(
725
731
  z.object({
726
732
  _id: z.string().describe("Post ID.").regex(
@@ -900,10 +906,10 @@ var QueryPostsResponse = z.object({
900
906
  ).optional()
901
907
  }).describe("Details on the paged set of results returned.").optional()
902
908
  });
903
- var GetPostMetricsRequest = z.object({
909
+ var GetPostMetricsRequest = /* @__PURE__ */ z.object({
904
910
  postId: z.string().describe("Post ID to retrieve metrics for.").min(1).max(38)
905
911
  });
906
- var GetPostMetricsResponse = z.object({
912
+ var GetPostMetricsResponse = /* @__PURE__ */ z.object({
907
913
  metrics: z.object({
908
914
  comments: z.number().int().describe("Total number of post comments.").optional(),
909
915
  likes: z.number().int().describe("Total number of post likes.").optional(),