@zernio/node 0.2.698 → 0.2.700

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
@@ -2240,7 +2240,7 @@ type AdTreeAdSet = {
2240
2240
  page_id?: string;
2241
2241
  } | null;
2242
2242
  /**
2243
- * Individual ads within this ad set (capped at 100). Returns a subset of Ad fields from the aggregation: `_id`, `name`, `platform`, `status`, `configuredStatus`, `reviewStatus`, `budget`, `metrics`, `creative`, `goal` and the `platform*` ids are always included; `targeting` and `schedule` may be absent. `configuredStatus` (the ad's own on/off toggle) and `reviewStatus` (the platform's review verdict) are part of this contract, not incidental: a rejected ad is only distinguishable from a healthy one through `reviewStatus`. When `timeIncrement=1&dailyLevel=ad`, each entry also carries a `daily[]` array of `AdDailyMetrics`.
2243
+ * Individual ads within this ad set (capped at 100). When the ad set has more than 100 ads these are the 100 highest-spending over the requested date range, so this array depends on `fromDate`/`toDate`; `adCount` is always the true ad set size. Returns a subset of Ad fields from the aggregation: `_id`, `name`, `platform`, `status`, `configuredStatus`, `reviewStatus`, `budget`, `metrics`, `creative`, `goal` and the `platform*` ids are always included; `targeting` and `schedule` may be absent. `configuredStatus` (the ad's own on/off toggle) and `reviewStatus` (the platform's review verdict) are part of this contract, not incidental: a rejected ad is only distinguishable from a healthy one through `reviewStatus`. When `timeIncrement=1&dailyLevel=ad`, each entry also carries a `daily[]` array of `AdDailyMetrics`.
2244
2244
  */
2245
2245
  ads?: Array<Ad>;
2246
2246
  /**
@@ -4253,7 +4253,7 @@ type ErrorResponse = {
4253
4253
  [key: string]: unknown;
4254
4254
  };
4255
4255
  /**
4256
- * Additional structured context (e.g. field-level validation errors).
4256
+ * Additional structured context (e.g. field-level validation errors), for example `privateReplyConsumed` on the private-reply endpoint's 400 when the comment's single reply is already spent.
4257
4257
  */
4258
4258
  details?: {
4259
4259
  [key: string]: unknown;
@@ -13304,6 +13304,15 @@ type GetAllAccountsHealthResponse = ({
13304
13304
  tokenExpiresAt?: string;
13305
13305
  needsReconnect?: boolean;
13306
13306
  issues?: Array<(string)>;
13307
+ /**
13308
+ * Observed from Meta's own error subcodes on our own sends (2534122, 1893063, 2534029), not a live probe. Set on the first refused send and cleared when a later send succeeds, so it lags reality by one send in each direction.
13309
+ */
13310
+ messagingRestriction?: {
13311
+ subcode?: number;
13312
+ message?: string;
13313
+ firstSeenAt?: string;
13314
+ lastSeenAt?: string;
13315
+ } | null;
13307
13316
  }>;
13308
13317
  });
13309
13318
  type GetAllAccountsHealthError = (ErrorResponse | {
@@ -13389,6 +13398,15 @@ type GetAccountHealthResponse = ({
13389
13398
  * Actionable recommendations to fix issues
13390
13399
  */
13391
13400
  recommendations?: Array<(string)>;
13401
+ /**
13402
+ * Observed from Meta's own error subcodes on our own sends (2534122, 1893063, 2534029), not a live probe. Set on the first refused send and cleared when a later send succeeds, so it lags reality by one send in each direction.
13403
+ */
13404
+ messagingRestriction?: {
13405
+ subcode?: number;
13406
+ message?: string;
13407
+ firstSeenAt?: string;
13408
+ lastSeenAt?: string;
13409
+ } | null;
13392
13410
  /**
13393
13411
  * WhatsApp accounts only. Live probe of the Meta link behind the channel, performed at request time (the same read as GET /v1/whatsapp/number-info).
13394
13412
  */
@@ -21601,10 +21619,7 @@ type SendPrivateReplyToCommentResponse = ({
21601
21619
  commentId?: string;
21602
21620
  platform?: 'instagram' | 'facebook';
21603
21621
  });
21604
- type SendPrivateReplyToCommentError = ({
21605
- error?: string;
21606
- code?: 'PLATFORM_LIMITATION';
21607
- } | {
21622
+ type SendPrivateReplyToCommentError = (ErrorResponse | {
21608
21623
  error?: string;
21609
21624
  } | unknown);
21610
21625
  type RetweetPostData = {
package/dist/index.d.ts CHANGED
@@ -2240,7 +2240,7 @@ type AdTreeAdSet = {
2240
2240
  page_id?: string;
2241
2241
  } | null;
2242
2242
  /**
2243
- * Individual ads within this ad set (capped at 100). Returns a subset of Ad fields from the aggregation: `_id`, `name`, `platform`, `status`, `configuredStatus`, `reviewStatus`, `budget`, `metrics`, `creative`, `goal` and the `platform*` ids are always included; `targeting` and `schedule` may be absent. `configuredStatus` (the ad's own on/off toggle) and `reviewStatus` (the platform's review verdict) are part of this contract, not incidental: a rejected ad is only distinguishable from a healthy one through `reviewStatus`. When `timeIncrement=1&dailyLevel=ad`, each entry also carries a `daily[]` array of `AdDailyMetrics`.
2243
+ * Individual ads within this ad set (capped at 100). When the ad set has more than 100 ads these are the 100 highest-spending over the requested date range, so this array depends on `fromDate`/`toDate`; `adCount` is always the true ad set size. Returns a subset of Ad fields from the aggregation: `_id`, `name`, `platform`, `status`, `configuredStatus`, `reviewStatus`, `budget`, `metrics`, `creative`, `goal` and the `platform*` ids are always included; `targeting` and `schedule` may be absent. `configuredStatus` (the ad's own on/off toggle) and `reviewStatus` (the platform's review verdict) are part of this contract, not incidental: a rejected ad is only distinguishable from a healthy one through `reviewStatus`. When `timeIncrement=1&dailyLevel=ad`, each entry also carries a `daily[]` array of `AdDailyMetrics`.
2244
2244
  */
2245
2245
  ads?: Array<Ad>;
2246
2246
  /**
@@ -4253,7 +4253,7 @@ type ErrorResponse = {
4253
4253
  [key: string]: unknown;
4254
4254
  };
4255
4255
  /**
4256
- * Additional structured context (e.g. field-level validation errors).
4256
+ * Additional structured context (e.g. field-level validation errors), for example `privateReplyConsumed` on the private-reply endpoint's 400 when the comment's single reply is already spent.
4257
4257
  */
4258
4258
  details?: {
4259
4259
  [key: string]: unknown;
@@ -13304,6 +13304,15 @@ type GetAllAccountsHealthResponse = ({
13304
13304
  tokenExpiresAt?: string;
13305
13305
  needsReconnect?: boolean;
13306
13306
  issues?: Array<(string)>;
13307
+ /**
13308
+ * Observed from Meta's own error subcodes on our own sends (2534122, 1893063, 2534029), not a live probe. Set on the first refused send and cleared when a later send succeeds, so it lags reality by one send in each direction.
13309
+ */
13310
+ messagingRestriction?: {
13311
+ subcode?: number;
13312
+ message?: string;
13313
+ firstSeenAt?: string;
13314
+ lastSeenAt?: string;
13315
+ } | null;
13307
13316
  }>;
13308
13317
  });
13309
13318
  type GetAllAccountsHealthError = (ErrorResponse | {
@@ -13389,6 +13398,15 @@ type GetAccountHealthResponse = ({
13389
13398
  * Actionable recommendations to fix issues
13390
13399
  */
13391
13400
  recommendations?: Array<(string)>;
13401
+ /**
13402
+ * Observed from Meta's own error subcodes on our own sends (2534122, 1893063, 2534029), not a live probe. Set on the first refused send and cleared when a later send succeeds, so it lags reality by one send in each direction.
13403
+ */
13404
+ messagingRestriction?: {
13405
+ subcode?: number;
13406
+ message?: string;
13407
+ firstSeenAt?: string;
13408
+ lastSeenAt?: string;
13409
+ } | null;
13392
13410
  /**
13393
13411
  * WhatsApp accounts only. Live probe of the Meta link behind the channel, performed at request time (the same read as GET /v1/whatsapp/number-info).
13394
13412
  */
@@ -21601,10 +21619,7 @@ type SendPrivateReplyToCommentResponse = ({
21601
21619
  commentId?: string;
21602
21620
  platform?: 'instagram' | 'facebook';
21603
21621
  });
21604
- type SendPrivateReplyToCommentError = ({
21605
- error?: string;
21606
- code?: 'PLATFORM_LIMITATION';
21607
- } | {
21622
+ type SendPrivateReplyToCommentError = (ErrorResponse | {
21608
21623
  error?: string;
21609
21624
  } | unknown);
21610
21625
  type RetweetPostData = {
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.698",
39
+ version: "0.2.700",
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.698",
8
+ version: "0.2.700",
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.698",
3
+ "version": "0.2.700",
4
4
  "description": "The official Node.js library for the Zernio API",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",
@@ -4167,7 +4167,9 @@ export const unlikePost = <ThrowOnError extends boolean = false>(options: Option
4167
4167
  * cards and attachments to commenters who do not follow the account (Meta code 2, subcode
4168
4168
  * 1545133, returned here as a non-retryable 400 that says so), and the failed call still
4169
4169
  * consumes the comment's single private reply. To reach non-followers send plain text and
4170
- * add buttons once they reply. `quickReplies` and `buttons` are mutually exclusive.
4170
+ * add buttons once they reply. `quickReplies` and `buttons` are mutually exclusive. When
4171
+ * the comment's single private reply is spent (by this call or an earlier one) the 400
4172
+ * carries `details.privateReplyConsumed: true`; never retry it.
4171
4173
  *
4172
4174
  */
4173
4175
  export const sendPrivateReplyToComment = <ThrowOnError extends boolean = false>(options: OptionsLegacyParser<SendPrivateReplyToCommentData, ThrowOnError>) => {
@@ -925,7 +925,7 @@ export type AdTreeAdSet = {
925
925
  page_id?: string;
926
926
  } | null;
927
927
  /**
928
- * Individual ads within this ad set (capped at 100). Returns a subset of Ad fields from the aggregation: `_id`, `name`, `platform`, `status`, `configuredStatus`, `reviewStatus`, `budget`, `metrics`, `creative`, `goal` and the `platform*` ids are always included; `targeting` and `schedule` may be absent. `configuredStatus` (the ad's own on/off toggle) and `reviewStatus` (the platform's review verdict) are part of this contract, not incidental: a rejected ad is only distinguishable from a healthy one through `reviewStatus`. When `timeIncrement=1&dailyLevel=ad`, each entry also carries a `daily[]` array of `AdDailyMetrics`.
928
+ * Individual ads within this ad set (capped at 100). When the ad set has more than 100 ads these are the 100 highest-spending over the requested date range, so this array depends on `fromDate`/`toDate`; `adCount` is always the true ad set size. Returns a subset of Ad fields from the aggregation: `_id`, `name`, `platform`, `status`, `configuredStatus`, `reviewStatus`, `budget`, `metrics`, `creative`, `goal` and the `platform*` ids are always included; `targeting` and `schedule` may be absent. `configuredStatus` (the ad's own on/off toggle) and `reviewStatus` (the platform's review verdict) are part of this contract, not incidental: a rejected ad is only distinguishable from a healthy one through `reviewStatus`. When `timeIncrement=1&dailyLevel=ad`, each entry also carries a `daily[]` array of `AdDailyMetrics`.
929
929
  */
930
930
  ads?: Array<Ad>;
931
931
  /**
@@ -3004,7 +3004,7 @@ export type ErrorResponse = {
3004
3004
  [key: string]: unknown;
3005
3005
  };
3006
3006
  /**
3007
- * Additional structured context (e.g. field-level validation errors).
3007
+ * Additional structured context (e.g. field-level validation errors), for example `privateReplyConsumed` on the private-reply endpoint's 400 when the comment's single reply is already spent.
3008
3008
  */
3009
3009
  details?: {
3010
3010
  [key: string]: unknown;
@@ -12528,6 +12528,15 @@ export type GetAllAccountsHealthResponse = ({
12528
12528
  tokenExpiresAt?: string;
12529
12529
  needsReconnect?: boolean;
12530
12530
  issues?: Array<(string)>;
12531
+ /**
12532
+ * Observed from Meta's own error subcodes on our own sends (2534122, 1893063, 2534029), not a live probe. Set on the first refused send and cleared when a later send succeeds, so it lags reality by one send in each direction.
12533
+ */
12534
+ messagingRestriction?: {
12535
+ subcode?: number;
12536
+ message?: string;
12537
+ firstSeenAt?: string;
12538
+ lastSeenAt?: string;
12539
+ } | null;
12531
12540
  }>;
12532
12541
  });
12533
12542
 
@@ -12619,6 +12628,15 @@ export type GetAccountHealthResponse = ({
12619
12628
  * Actionable recommendations to fix issues
12620
12629
  */
12621
12630
  recommendations?: Array<(string)>;
12631
+ /**
12632
+ * Observed from Meta's own error subcodes on our own sends (2534122, 1893063, 2534029), not a live probe. Set on the first refused send and cleared when a later send succeeds, so it lags reality by one send in each direction.
12633
+ */
12634
+ messagingRestriction?: {
12635
+ subcode?: number;
12636
+ message?: string;
12637
+ firstSeenAt?: string;
12638
+ lastSeenAt?: string;
12639
+ } | null;
12622
12640
  /**
12623
12641
  * WhatsApp accounts only. Live probe of the Meta link behind the channel, performed at request time (the same read as GET /v1/whatsapp/number-info).
12624
12642
  */
@@ -21353,10 +21371,7 @@ export type SendPrivateReplyToCommentResponse = ({
21353
21371
  platform?: 'instagram' | 'facebook';
21354
21372
  });
21355
21373
 
21356
- export type SendPrivateReplyToCommentError = ({
21357
- error?: string;
21358
- code?: 'PLATFORM_LIMITATION';
21359
- } | {
21374
+ export type SendPrivateReplyToCommentError = (ErrorResponse | {
21360
21375
  error?: string;
21361
21376
  } | unknown);
21362
21377