@zernio/node 0.2.267 → 0.2.269

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
@@ -19155,9 +19155,22 @@ type CreateStandaloneAdData = {
19155
19155
  */
19156
19156
  budgetType?: 'daily' | 'lifetime';
19157
19157
  /**
19158
- * Meta only. Publish state of the created ad set + ad. Omitted or ACTIVE publishes live (default, back-compat); PAUSED creates them paused and skips activation, so you can review before they spend.
19158
+ * Meta only. Desired publish state of the ad (and, on the legacy/multi-ad-set shapes, the ad set too).
19159
+ * Omitted or `ACTIVE` publishes live immediately (default). `PAUSED` creates the objects paused and skips
19160
+ * activation — useful to stage ads before they spend. On the attach shape (`adSetId`), only the new ad is
19161
+ * affected; the existing ad set and campaign are already live and are not touched.
19162
+ *
19159
19163
  */
19160
19164
  status?: 'ACTIVE' | 'PAUSED';
19165
+ /**
19166
+ * Meta only. Independent publish state for the CAMPAIGN when the create makes both a new campaign and a
19167
+ * new ad set (legacy shape). When omitted, the campaign follows `status`. Use this to stage a paused
19168
+ * campaign with an active ad set (`status: ACTIVE, campaignStatus: PAUSED`) — the ad set will start
19169
+ * delivering as soon as the campaign is activated later. Ignored when `existingCampaignId` is set (the
19170
+ * campaign is already live and its status is not changed).
19171
+ *
19172
+ */
19173
+ campaignStatus?: 'ACTIVE' | 'PAUSED';
19161
19174
  /**
19162
19175
  * Meta only. Where the budget lives, which selects the Meta budget model:
19163
19176
  * - `adset` (default): ABO (Ad-set Budget Optimization). The budget is set on the
@@ -19302,11 +19315,16 @@ type CreateStandaloneAdData = {
19302
19315
  /**
19303
19316
  * Meta only. Reuse an EXISTING ad creative by id instead of
19304
19317
  * building a new one from the copy/media fields (which are then
19305
- * ignored). Combine with `existingCampaignId` to build a
19306
- * multi-ad-set campaign that shares one creative. Mutually
19307
- * exclusive with `creatives[]`, `dynamicCreative`, and
19308
- * `placementAssets`. The creative id used is returned as
19309
- * `creativeId` on the create response.
19318
+ * ignored). Works on both shapes:
19319
+ * - Legacy/multi-ad-set (`existingCampaignId`): combine with
19320
+ * `existingCampaignId` to build a multi-ad-set campaign that
19321
+ * shares one creative across audiences.
19322
+ * - Attach (`adSetId`): combine with `adSetId` to add a second
19323
+ * (or Nth) ad to an existing ad set reusing the same creative —
19324
+ * no `headline`/`body`/`imageUrl` required on the body.
19325
+ * Mutually exclusive with `creatives[]`, `dynamicCreative`, and
19326
+ * `placementAssets`. The creative id is returned as `creativeId`
19327
+ * on the create response.
19310
19328
  *
19311
19329
  */
19312
19330
  existingCreativeId?: string;
@@ -19418,6 +19436,10 @@ type CreateStandaloneAdData = {
19418
19436
  * additionally enforces co-selection rules (e.g. some positions require their parent
19419
19437
  * publisher platform) and returns an actionable error which we surface. Non-Meta
19420
19438
  * platforms reject this field.
19439
+ * Mutually exclusive with `rawTargeting` — sending both returns a 422. If you need
19440
+ * manual placements alongside raw targeting, include `publisher_platforms`,
19441
+ * `facebook_positions`, `instagram_positions`, etc. directly inside the `rawTargeting`
19442
+ * object using Meta's snake_case field names.
19421
19443
  *
19422
19444
  */
19423
19445
  placements?: {
@@ -19449,9 +19471,11 @@ type CreateStandaloneAdData = {
19449
19471
  * business places, etc.) — exactly the shape `GET /v1/ads/{adId}` returns for external ads. Use it to
19450
19472
  * clone a campaign's targeting EXACTLY, preserving advanced fields the camelCase targeting fields can't
19451
19473
  * model. Mutually exclusive with the camelCase targeting fields (countries/regions/cities/interests/
19452
- * ageMin/...), `audienceId`, and `savedTargetingId` (sending both → 422). Sent as-is; Meta validates and
19453
- * surfaces any errors. If cloning an EU campaign, also pass `dsaBeneficiary` / `dsaPayor` (those are
19454
- * separate fields, not part of targeting).
19474
+ * ageMin/.../placements), `audienceId`, and `savedTargetingId` (sending both → 422). Sent as-is; Meta
19475
+ * validates and surfaces any errors. If cloning an EU campaign, also pass `dsaBeneficiary` / `dsaPayor`
19476
+ * (those are separate fields, not part of targeting).
19477
+ * To set manual placements alongside rawTargeting, include Meta's placement fields directly inside this
19478
+ * object: `publisher_platforms`, `facebook_positions`, `instagram_positions`, etc.
19455
19479
  *
19456
19480
  */
19457
19481
  rawTargeting?: {
package/dist/index.d.ts CHANGED
@@ -19155,9 +19155,22 @@ type CreateStandaloneAdData = {
19155
19155
  */
19156
19156
  budgetType?: 'daily' | 'lifetime';
19157
19157
  /**
19158
- * Meta only. Publish state of the created ad set + ad. Omitted or ACTIVE publishes live (default, back-compat); PAUSED creates them paused and skips activation, so you can review before they spend.
19158
+ * Meta only. Desired publish state of the ad (and, on the legacy/multi-ad-set shapes, the ad set too).
19159
+ * Omitted or `ACTIVE` publishes live immediately (default). `PAUSED` creates the objects paused and skips
19160
+ * activation — useful to stage ads before they spend. On the attach shape (`adSetId`), only the new ad is
19161
+ * affected; the existing ad set and campaign are already live and are not touched.
19162
+ *
19159
19163
  */
19160
19164
  status?: 'ACTIVE' | 'PAUSED';
19165
+ /**
19166
+ * Meta only. Independent publish state for the CAMPAIGN when the create makes both a new campaign and a
19167
+ * new ad set (legacy shape). When omitted, the campaign follows `status`. Use this to stage a paused
19168
+ * campaign with an active ad set (`status: ACTIVE, campaignStatus: PAUSED`) — the ad set will start
19169
+ * delivering as soon as the campaign is activated later. Ignored when `existingCampaignId` is set (the
19170
+ * campaign is already live and its status is not changed).
19171
+ *
19172
+ */
19173
+ campaignStatus?: 'ACTIVE' | 'PAUSED';
19161
19174
  /**
19162
19175
  * Meta only. Where the budget lives, which selects the Meta budget model:
19163
19176
  * - `adset` (default): ABO (Ad-set Budget Optimization). The budget is set on the
@@ -19302,11 +19315,16 @@ type CreateStandaloneAdData = {
19302
19315
  /**
19303
19316
  * Meta only. Reuse an EXISTING ad creative by id instead of
19304
19317
  * building a new one from the copy/media fields (which are then
19305
- * ignored). Combine with `existingCampaignId` to build a
19306
- * multi-ad-set campaign that shares one creative. Mutually
19307
- * exclusive with `creatives[]`, `dynamicCreative`, and
19308
- * `placementAssets`. The creative id used is returned as
19309
- * `creativeId` on the create response.
19318
+ * ignored). Works on both shapes:
19319
+ * - Legacy/multi-ad-set (`existingCampaignId`): combine with
19320
+ * `existingCampaignId` to build a multi-ad-set campaign that
19321
+ * shares one creative across audiences.
19322
+ * - Attach (`adSetId`): combine with `adSetId` to add a second
19323
+ * (or Nth) ad to an existing ad set reusing the same creative —
19324
+ * no `headline`/`body`/`imageUrl` required on the body.
19325
+ * Mutually exclusive with `creatives[]`, `dynamicCreative`, and
19326
+ * `placementAssets`. The creative id is returned as `creativeId`
19327
+ * on the create response.
19310
19328
  *
19311
19329
  */
19312
19330
  existingCreativeId?: string;
@@ -19418,6 +19436,10 @@ type CreateStandaloneAdData = {
19418
19436
  * additionally enforces co-selection rules (e.g. some positions require their parent
19419
19437
  * publisher platform) and returns an actionable error which we surface. Non-Meta
19420
19438
  * platforms reject this field.
19439
+ * Mutually exclusive with `rawTargeting` — sending both returns a 422. If you need
19440
+ * manual placements alongside raw targeting, include `publisher_platforms`,
19441
+ * `facebook_positions`, `instagram_positions`, etc. directly inside the `rawTargeting`
19442
+ * object using Meta's snake_case field names.
19421
19443
  *
19422
19444
  */
19423
19445
  placements?: {
@@ -19449,9 +19471,11 @@ type CreateStandaloneAdData = {
19449
19471
  * business places, etc.) — exactly the shape `GET /v1/ads/{adId}` returns for external ads. Use it to
19450
19472
  * clone a campaign's targeting EXACTLY, preserving advanced fields the camelCase targeting fields can't
19451
19473
  * model. Mutually exclusive with the camelCase targeting fields (countries/regions/cities/interests/
19452
- * ageMin/...), `audienceId`, and `savedTargetingId` (sending both → 422). Sent as-is; Meta validates and
19453
- * surfaces any errors. If cloning an EU campaign, also pass `dsaBeneficiary` / `dsaPayor` (those are
19454
- * separate fields, not part of targeting).
19474
+ * ageMin/.../placements), `audienceId`, and `savedTargetingId` (sending both → 422). Sent as-is; Meta
19475
+ * validates and surfaces any errors. If cloning an EU campaign, also pass `dsaBeneficiary` / `dsaPayor`
19476
+ * (those are separate fields, not part of targeting).
19477
+ * To set manual placements alongside rawTargeting, include Meta's placement fields directly inside this
19478
+ * object: `publisher_platforms`, `facebook_positions`, `instagram_positions`, etc.
19455
19479
  *
19456
19480
  */
19457
19481
  rawTargeting?: {
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.267",
39
+ version: "0.2.269",
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.267",
8
+ version: "0.2.269",
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.267",
3
+ "version": "0.2.269",
4
4
  "description": "The official Node.js library for the Zernio API",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",
@@ -19660,9 +19660,22 @@ export type CreateStandaloneAdData = {
19660
19660
  */
19661
19661
  budgetType?: 'daily' | 'lifetime';
19662
19662
  /**
19663
- * Meta only. Publish state of the created ad set + ad. Omitted or ACTIVE publishes live (default, back-compat); PAUSED creates them paused and skips activation, so you can review before they spend.
19663
+ * Meta only. Desired publish state of the ad (and, on the legacy/multi-ad-set shapes, the ad set too).
19664
+ * Omitted or `ACTIVE` publishes live immediately (default). `PAUSED` creates the objects paused and skips
19665
+ * activation — useful to stage ads before they spend. On the attach shape (`adSetId`), only the new ad is
19666
+ * affected; the existing ad set and campaign are already live and are not touched.
19667
+ *
19664
19668
  */
19665
19669
  status?: 'ACTIVE' | 'PAUSED';
19670
+ /**
19671
+ * Meta only. Independent publish state for the CAMPAIGN when the create makes both a new campaign and a
19672
+ * new ad set (legacy shape). When omitted, the campaign follows `status`. Use this to stage a paused
19673
+ * campaign with an active ad set (`status: ACTIVE, campaignStatus: PAUSED`) — the ad set will start
19674
+ * delivering as soon as the campaign is activated later. Ignored when `existingCampaignId` is set (the
19675
+ * campaign is already live and its status is not changed).
19676
+ *
19677
+ */
19678
+ campaignStatus?: 'ACTIVE' | 'PAUSED';
19666
19679
  /**
19667
19680
  * Meta only. Where the budget lives, which selects the Meta budget model:
19668
19681
  * - `adset` (default): ABO (Ad-set Budget Optimization). The budget is set on the
@@ -19807,11 +19820,16 @@ export type CreateStandaloneAdData = {
19807
19820
  /**
19808
19821
  * Meta only. Reuse an EXISTING ad creative by id instead of
19809
19822
  * building a new one from the copy/media fields (which are then
19810
- * ignored). Combine with `existingCampaignId` to build a
19811
- * multi-ad-set campaign that shares one creative. Mutually
19812
- * exclusive with `creatives[]`, `dynamicCreative`, and
19813
- * `placementAssets`. The creative id used is returned as
19814
- * `creativeId` on the create response.
19823
+ * ignored). Works on both shapes:
19824
+ * - Legacy/multi-ad-set (`existingCampaignId`): combine with
19825
+ * `existingCampaignId` to build a multi-ad-set campaign that
19826
+ * shares one creative across audiences.
19827
+ * - Attach (`adSetId`): combine with `adSetId` to add a second
19828
+ * (or Nth) ad to an existing ad set reusing the same creative —
19829
+ * no `headline`/`body`/`imageUrl` required on the body.
19830
+ * Mutually exclusive with `creatives[]`, `dynamicCreative`, and
19831
+ * `placementAssets`. The creative id is returned as `creativeId`
19832
+ * on the create response.
19815
19833
  *
19816
19834
  */
19817
19835
  existingCreativeId?: string;
@@ -19923,6 +19941,10 @@ export type CreateStandaloneAdData = {
19923
19941
  * additionally enforces co-selection rules (e.g. some positions require their parent
19924
19942
  * publisher platform) and returns an actionable error which we surface. Non-Meta
19925
19943
  * platforms reject this field.
19944
+ * Mutually exclusive with `rawTargeting` — sending both returns a 422. If you need
19945
+ * manual placements alongside raw targeting, include `publisher_platforms`,
19946
+ * `facebook_positions`, `instagram_positions`, etc. directly inside the `rawTargeting`
19947
+ * object using Meta's snake_case field names.
19926
19948
  *
19927
19949
  */
19928
19950
  placements?: {
@@ -19954,9 +19976,11 @@ export type CreateStandaloneAdData = {
19954
19976
  * business places, etc.) — exactly the shape `GET /v1/ads/{adId}` returns for external ads. Use it to
19955
19977
  * clone a campaign's targeting EXACTLY, preserving advanced fields the camelCase targeting fields can't
19956
19978
  * model. Mutually exclusive with the camelCase targeting fields (countries/regions/cities/interests/
19957
- * ageMin/...), `audienceId`, and `savedTargetingId` (sending both → 422). Sent as-is; Meta validates and
19958
- * surfaces any errors. If cloning an EU campaign, also pass `dsaBeneficiary` / `dsaPayor` (those are
19959
- * separate fields, not part of targeting).
19979
+ * ageMin/.../placements), `audienceId`, and `savedTargetingId` (sending both → 422). Sent as-is; Meta
19980
+ * validates and surfaces any errors. If cloning an EU campaign, also pass `dsaBeneficiary` / `dsaPayor`
19981
+ * (those are separate fields, not part of targeting).
19982
+ * To set manual placements alongside rawTargeting, include Meta's placement fields directly inside this
19983
+ * object: `publisher_platforms`, `facebook_positions`, `instagram_positions`, etc.
19960
19984
  *
19961
19985
  */
19962
19986
  rawTargeting?: {