@zernio/node 0.2.1519 → 0.2.1521

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -18874,13 +18874,17 @@ type TikTokPlatformData = {
18874
18874
  */
18875
18875
  mediaType?: 'video' | 'photo';
18876
18876
  /**
18877
- * Optional for video posts. Timestamp in milliseconds to select which frame to use as thumbnail (defaults to 1000ms/1 second). Ignored when videoCoverImageUrl is provided.
18877
+ * Optional for video posts. Timestamp in milliseconds to select which frame to use as thumbnail (defaults to 1000ms/1 second). Ignored when the videoCoverImageUrl image becomes the cover, and used when Zernio skips that image (see videoCoverImageUrl).
18878
18878
  */
18879
18879
  videoCoverTimestampMs?: number;
18880
18880
  /**
18881
18881
  * Optional for video posts. URL of a custom thumbnail image (JPG, PNG, or WebP, max 20MB). Any downloadable URL works: we rehost it ourselves. Overrides videoCoverTimestampMs when provided.
18882
18882
  *
18883
- * The image is stitched as a single frame at the start of the video to serve as the cover. Accounts connected through the TikTok for Business app instead hand it to TikTok as the cover, with no stitching, falling back to videoCoverTimestampMs without it.
18883
+ * The image is stitched as a single frame at the start of the video to serve as the cover.
18884
+ *
18885
+ * When the image shape is far from the video shape (it would fill less than half of the frame, for example a landscape cover on a vertical video), or the stitch fails, Zernio skips the image and TikTok uses videoCoverTimestampMs.
18886
+ *
18887
+ * Accounts connected through the TikTok for Business app instead hand it to TikTok as the cover, with no stitching, falling back to videoCoverTimestampMs without it.
18884
18888
  *
18885
18889
  */
18886
18890
  videoCoverImageUrl?: string;
@@ -61939,7 +61943,7 @@ type CreateStandaloneAdData = {
61939
61943
  * - `app_promotion`: requires `promotedObject.applicationId` and `promotedObject.objectStoreUrl`.
61940
61944
  * - `catalog_sales`: Advantage+ catalog ads (e.g. vehicle inventory). Requires `promotedObject.productSetId`, `promotedObject.pixelId` and `promotedObject.customEventType`. Builds a catalog TEMPLATE creative from the copy fields, which may carry template tags like {{product.name}} or {{vehicle.make}}.
61941
61945
  * - `catalog_sales` visuals: no imageUrl or video is sent; Meta renders them per catalog item (an imageUrl or video sent is ignored, not uploaded). Find catalogs via GET /v1/ads/catalogs and product sets via GET /v1/ads/catalogs/{catalogId}/product-sets.
61942
- * - `catalog_sales` shape: single shape only, no creatives[], dynamicCreative, placementAssets, existingCreativeId or carouselCards. Works with `existingCampaignId`, and with `adSetId` to add to an existing ad set (then only `promotedObject.productSetId` is required). Pick the format with `catalogFormat`.
61946
+ * - `catalog_sales` shape: single shape only, no creatives[], dynamicCreative, placementAssets, existingCreativeId or carouselCards. Works with `existingCampaignId`, and with `adSetId` to add to an existing ad set (then only `promotedObject.productSetId` is required). Pick the format with `catalogFormat`, and open the carousel with `catalogIntroCards`.
61943
61947
  * - `traffic` with `promotedObject.productSetId`: a catalog ad without a pixel (OUTCOME_TRAFFIC, `optimizationGoal` LINK_CLICKS by default or LANDING_PAGE_VIEWS). The product set goes on the template creative only, never the ad set's promoted_object. No `pixelId` or `customEventType` needed. Same creative rules as `catalog_sales`.
61944
61948
  * - `page_likes`: Page Likes under OUTCOME_ENGAGEMENT (destination_type ON_PAGE, optimization PAGE_LIKES). `promotedObject.pageId` is optional and auto-filled. The CTA is fixed to LIKE_PAGE for that Page; headline / body / linkUrl / callToAction / imageUrl / video are all optional (Meta derives them from the Page).
61945
61949
  * - `page_visits`: "Page visits and followers" under OUTCOME_TRAFFIC (destination_type FACEBOOK_PAGE, optimization PROFILE_VISIT). `promotedObject.pageId` is optional and auto-filled; `linkUrl` defaults to the Page. Accounts Meta has not enabled are refused with "This account isn't eligible to use Profile Visit ads yet".
@@ -62045,6 +62049,34 @@ type CreateStandaloneAdData = {
62045
62049
  *
62046
62050
  */
62047
62051
  catalogFormat?: 'single_image' | 'carousel_images_multi_items' | 'carousel_images_single_item' | 'carousel_slideshows';
62052
+ /**
62053
+ * Meta only. Static cards shown before the catalog products in a catalog carousel, for example a brand or offer slide. Valid only with goal `catalog_sales` and `catalogFormat` omitted or `carousel_images_multi_items`; a 400 otherwise.
62054
+ *
62055
+ * Sent in order as `object_story_spec.template_data.child_attachments` with `static_card: true`, followed by one catalog card built from the top-level `headline`, `description` and `callToAction`.
62056
+ *
62057
+ */
62058
+ catalogIntroCards?: Array<{
62059
+ /**
62060
+ * Card image; uploaded to the ad account and referenced by hash.
62061
+ */
62062
+ imageUrl: string;
62063
+ /**
62064
+ * Card headline. Meta does not show it on Instagram.
62065
+ */
62066
+ headline: string;
62067
+ /**
62068
+ * Card description. Meta does not show it on Instagram.
62069
+ */
62070
+ description?: string;
62071
+ /**
62072
+ * Card destination URL. Defaults to the top-level linkUrl.
62073
+ */
62074
+ linkUrl?: string;
62075
+ /**
62076
+ * Card CTA override. Defaults to the top-level callToAction; same enum.
62077
+ */
62078
+ callToAction?: string;
62079
+ }>;
62048
62080
  /**
62049
62081
  * Meta only. Multi-advertiser ads: whether Meta may show this ad alongside other advertisers' in one unit. Meta auto-enrols since Aug 2024, so send OPT_OUT to leave. It is a top-level creative field, NOT a `creativeFeatures` key, and Meta rejects it there.
62050
62082
  */
package/dist/index.d.ts CHANGED
@@ -18874,13 +18874,17 @@ type TikTokPlatformData = {
18874
18874
  */
18875
18875
  mediaType?: 'video' | 'photo';
18876
18876
  /**
18877
- * Optional for video posts. Timestamp in milliseconds to select which frame to use as thumbnail (defaults to 1000ms/1 second). Ignored when videoCoverImageUrl is provided.
18877
+ * Optional for video posts. Timestamp in milliseconds to select which frame to use as thumbnail (defaults to 1000ms/1 second). Ignored when the videoCoverImageUrl image becomes the cover, and used when Zernio skips that image (see videoCoverImageUrl).
18878
18878
  */
18879
18879
  videoCoverTimestampMs?: number;
18880
18880
  /**
18881
18881
  * Optional for video posts. URL of a custom thumbnail image (JPG, PNG, or WebP, max 20MB). Any downloadable URL works: we rehost it ourselves. Overrides videoCoverTimestampMs when provided.
18882
18882
  *
18883
- * The image is stitched as a single frame at the start of the video to serve as the cover. Accounts connected through the TikTok for Business app instead hand it to TikTok as the cover, with no stitching, falling back to videoCoverTimestampMs without it.
18883
+ * The image is stitched as a single frame at the start of the video to serve as the cover.
18884
+ *
18885
+ * When the image shape is far from the video shape (it would fill less than half of the frame, for example a landscape cover on a vertical video), or the stitch fails, Zernio skips the image and TikTok uses videoCoverTimestampMs.
18886
+ *
18887
+ * Accounts connected through the TikTok for Business app instead hand it to TikTok as the cover, with no stitching, falling back to videoCoverTimestampMs without it.
18884
18888
  *
18885
18889
  */
18886
18890
  videoCoverImageUrl?: string;
@@ -61939,7 +61943,7 @@ type CreateStandaloneAdData = {
61939
61943
  * - `app_promotion`: requires `promotedObject.applicationId` and `promotedObject.objectStoreUrl`.
61940
61944
  * - `catalog_sales`: Advantage+ catalog ads (e.g. vehicle inventory). Requires `promotedObject.productSetId`, `promotedObject.pixelId` and `promotedObject.customEventType`. Builds a catalog TEMPLATE creative from the copy fields, which may carry template tags like {{product.name}} or {{vehicle.make}}.
61941
61945
  * - `catalog_sales` visuals: no imageUrl or video is sent; Meta renders them per catalog item (an imageUrl or video sent is ignored, not uploaded). Find catalogs via GET /v1/ads/catalogs and product sets via GET /v1/ads/catalogs/{catalogId}/product-sets.
61942
- * - `catalog_sales` shape: single shape only, no creatives[], dynamicCreative, placementAssets, existingCreativeId or carouselCards. Works with `existingCampaignId`, and with `adSetId` to add to an existing ad set (then only `promotedObject.productSetId` is required). Pick the format with `catalogFormat`.
61946
+ * - `catalog_sales` shape: single shape only, no creatives[], dynamicCreative, placementAssets, existingCreativeId or carouselCards. Works with `existingCampaignId`, and with `adSetId` to add to an existing ad set (then only `promotedObject.productSetId` is required). Pick the format with `catalogFormat`, and open the carousel with `catalogIntroCards`.
61943
61947
  * - `traffic` with `promotedObject.productSetId`: a catalog ad without a pixel (OUTCOME_TRAFFIC, `optimizationGoal` LINK_CLICKS by default or LANDING_PAGE_VIEWS). The product set goes on the template creative only, never the ad set's promoted_object. No `pixelId` or `customEventType` needed. Same creative rules as `catalog_sales`.
61944
61948
  * - `page_likes`: Page Likes under OUTCOME_ENGAGEMENT (destination_type ON_PAGE, optimization PAGE_LIKES). `promotedObject.pageId` is optional and auto-filled. The CTA is fixed to LIKE_PAGE for that Page; headline / body / linkUrl / callToAction / imageUrl / video are all optional (Meta derives them from the Page).
61945
61949
  * - `page_visits`: "Page visits and followers" under OUTCOME_TRAFFIC (destination_type FACEBOOK_PAGE, optimization PROFILE_VISIT). `promotedObject.pageId` is optional and auto-filled; `linkUrl` defaults to the Page. Accounts Meta has not enabled are refused with "This account isn't eligible to use Profile Visit ads yet".
@@ -62045,6 +62049,34 @@ type CreateStandaloneAdData = {
62045
62049
  *
62046
62050
  */
62047
62051
  catalogFormat?: 'single_image' | 'carousel_images_multi_items' | 'carousel_images_single_item' | 'carousel_slideshows';
62052
+ /**
62053
+ * Meta only. Static cards shown before the catalog products in a catalog carousel, for example a brand or offer slide. Valid only with goal `catalog_sales` and `catalogFormat` omitted or `carousel_images_multi_items`; a 400 otherwise.
62054
+ *
62055
+ * Sent in order as `object_story_spec.template_data.child_attachments` with `static_card: true`, followed by one catalog card built from the top-level `headline`, `description` and `callToAction`.
62056
+ *
62057
+ */
62058
+ catalogIntroCards?: Array<{
62059
+ /**
62060
+ * Card image; uploaded to the ad account and referenced by hash.
62061
+ */
62062
+ imageUrl: string;
62063
+ /**
62064
+ * Card headline. Meta does not show it on Instagram.
62065
+ */
62066
+ headline: string;
62067
+ /**
62068
+ * Card description. Meta does not show it on Instagram.
62069
+ */
62070
+ description?: string;
62071
+ /**
62072
+ * Card destination URL. Defaults to the top-level linkUrl.
62073
+ */
62074
+ linkUrl?: string;
62075
+ /**
62076
+ * Card CTA override. Defaults to the top-level callToAction; same enum.
62077
+ */
62078
+ callToAction?: string;
62079
+ }>;
62048
62080
  /**
62049
62081
  * Meta only. Multi-advertiser ads: whether Meta may show this ad alongside other advertisers' in one unit. Meta auto-enrols since Aug 2024, so send OPT_OUT to leave. It is a top-level creative field, NOT a `creativeFeatures` key, and Meta rejects it there.
62050
62082
  */
package/dist/index.js CHANGED
@@ -36,7 +36,7 @@ module.exports = __toCommonJS(index_exports);
36
36
  // package.json
37
37
  var package_default = {
38
38
  name: "@zernio/node",
39
- version: "0.2.1519",
39
+ version: "0.2.1521",
40
40
  description: "The official Node.js library for the Zernio API",
41
41
  main: "dist/index.js",
42
42
  module: "dist/index.mjs",
package/dist/index.mjs CHANGED
@@ -5,7 +5,7 @@ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "sy
5
5
  // package.json
6
6
  var package_default = {
7
7
  name: "@zernio/node",
8
- version: "0.2.1519",
8
+ version: "0.2.1521",
9
9
  description: "The official Node.js library for the Zernio API",
10
10
  main: "dist/index.js",
11
11
  module: "dist/index.mjs",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zernio/node",
3
- "version": "0.2.1519",
3
+ "version": "0.2.1521",
4
4
  "description": "The official Node.js library for the Zernio API",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",
@@ -17288,13 +17288,17 @@ export type TikTokPlatformData = {
17288
17288
  */
17289
17289
  mediaType?: 'video' | 'photo';
17290
17290
  /**
17291
- * Optional for video posts. Timestamp in milliseconds to select which frame to use as thumbnail (defaults to 1000ms/1 second). Ignored when videoCoverImageUrl is provided.
17291
+ * Optional for video posts. Timestamp in milliseconds to select which frame to use as thumbnail (defaults to 1000ms/1 second). Ignored when the videoCoverImageUrl image becomes the cover, and used when Zernio skips that image (see videoCoverImageUrl).
17292
17292
  */
17293
17293
  videoCoverTimestampMs?: number;
17294
17294
  /**
17295
17295
  * Optional for video posts. URL of a custom thumbnail image (JPG, PNG, or WebP, max 20MB). Any downloadable URL works: we rehost it ourselves. Overrides videoCoverTimestampMs when provided.
17296
17296
  *
17297
- * The image is stitched as a single frame at the start of the video to serve as the cover. Accounts connected through the TikTok for Business app instead hand it to TikTok as the cover, with no stitching, falling back to videoCoverTimestampMs without it.
17297
+ * The image is stitched as a single frame at the start of the video to serve as the cover.
17298
+ *
17299
+ * When the image shape is far from the video shape (it would fill less than half of the frame, for example a landscape cover on a vertical video), or the stitch fails, Zernio skips the image and TikTok uses videoCoverTimestampMs.
17300
+ *
17301
+ * Accounts connected through the TikTok for Business app instead hand it to TikTok as the cover, with no stitching, falling back to videoCoverTimestampMs without it.
17298
17302
  *
17299
17303
  */
17300
17304
  videoCoverImageUrl?: string;
@@ -63297,7 +63301,7 @@ export type CreateStandaloneAdData = {
63297
63301
  * - `app_promotion`: requires `promotedObject.applicationId` and `promotedObject.objectStoreUrl`.
63298
63302
  * - `catalog_sales`: Advantage+ catalog ads (e.g. vehicle inventory). Requires `promotedObject.productSetId`, `promotedObject.pixelId` and `promotedObject.customEventType`. Builds a catalog TEMPLATE creative from the copy fields, which may carry template tags like {{product.name}} or {{vehicle.make}}.
63299
63303
  * - `catalog_sales` visuals: no imageUrl or video is sent; Meta renders them per catalog item (an imageUrl or video sent is ignored, not uploaded). Find catalogs via GET /v1/ads/catalogs and product sets via GET /v1/ads/catalogs/{catalogId}/product-sets.
63300
- * - `catalog_sales` shape: single shape only, no creatives[], dynamicCreative, placementAssets, existingCreativeId or carouselCards. Works with `existingCampaignId`, and with `adSetId` to add to an existing ad set (then only `promotedObject.productSetId` is required). Pick the format with `catalogFormat`.
63304
+ * - `catalog_sales` shape: single shape only, no creatives[], dynamicCreative, placementAssets, existingCreativeId or carouselCards. Works with `existingCampaignId`, and with `adSetId` to add to an existing ad set (then only `promotedObject.productSetId` is required). Pick the format with `catalogFormat`, and open the carousel with `catalogIntroCards`.
63301
63305
  * - `traffic` with `promotedObject.productSetId`: a catalog ad without a pixel (OUTCOME_TRAFFIC, `optimizationGoal` LINK_CLICKS by default or LANDING_PAGE_VIEWS). The product set goes on the template creative only, never the ad set's promoted_object. No `pixelId` or `customEventType` needed. Same creative rules as `catalog_sales`.
63302
63306
  * - `page_likes`: Page Likes under OUTCOME_ENGAGEMENT (destination_type ON_PAGE, optimization PAGE_LIKES). `promotedObject.pageId` is optional and auto-filled. The CTA is fixed to LIKE_PAGE for that Page; headline / body / linkUrl / callToAction / imageUrl / video are all optional (Meta derives them from the Page).
63303
63307
  * - `page_visits`: "Page visits and followers" under OUTCOME_TRAFFIC (destination_type FACEBOOK_PAGE, optimization PROFILE_VISIT). `promotedObject.pageId` is optional and auto-filled; `linkUrl` defaults to the Page. Accounts Meta has not enabled are refused with "This account isn't eligible to use Profile Visit ads yet".
@@ -63403,6 +63407,34 @@ export type CreateStandaloneAdData = {
63403
63407
  *
63404
63408
  */
63405
63409
  catalogFormat?: 'single_image' | 'carousel_images_multi_items' | 'carousel_images_single_item' | 'carousel_slideshows';
63410
+ /**
63411
+ * Meta only. Static cards shown before the catalog products in a catalog carousel, for example a brand or offer slide. Valid only with goal `catalog_sales` and `catalogFormat` omitted or `carousel_images_multi_items`; a 400 otherwise.
63412
+ *
63413
+ * Sent in order as `object_story_spec.template_data.child_attachments` with `static_card: true`, followed by one catalog card built from the top-level `headline`, `description` and `callToAction`.
63414
+ *
63415
+ */
63416
+ catalogIntroCards?: Array<{
63417
+ /**
63418
+ * Card image; uploaded to the ad account and referenced by hash.
63419
+ */
63420
+ imageUrl: string;
63421
+ /**
63422
+ * Card headline. Meta does not show it on Instagram.
63423
+ */
63424
+ headline: string;
63425
+ /**
63426
+ * Card description. Meta does not show it on Instagram.
63427
+ */
63428
+ description?: string;
63429
+ /**
63430
+ * Card destination URL. Defaults to the top-level linkUrl.
63431
+ */
63432
+ linkUrl?: string;
63433
+ /**
63434
+ * Card CTA override. Defaults to the top-level callToAction; same enum.
63435
+ */
63436
+ callToAction?: string;
63437
+ }>;
63406
63438
  /**
63407
63439
  * Meta only. Multi-advertiser ads: whether Meta may show this ad alongside other advertisers' in one unit. Meta auto-enrols since Aug 2024, so send OPT_OUT to leave. It is a top-level creative field, NOT a `creativeFeatures` key, and Meta rejects it there.
63408
63440
  */