@zernio/node 0.2.532 → 0.2.533

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
@@ -25416,6 +25416,10 @@ type ListCommentAutomationsResponse = ({
25416
25416
  * Seconds waited before the public reply is posted. Absent when it follows the DM immediately.
25417
25417
  */
25418
25418
  commentReplyDelaySeconds?: number;
25419
+ /**
25420
+ * Whether these keywords also fire on a plain inbound DM.
25421
+ */
25422
+ alsoMatchInDms?: boolean;
25419
25423
  isActive?: boolean;
25420
25424
  stats?: {
25421
25425
  triggered?: number;
@@ -25532,6 +25536,10 @@ type CreateCommentAutomationData = {
25532
25536
  * Seconds to wait before posting the public comment reply. Omit or send 0 to post it right after the DM (the default). The reply never goes out before the DM, so a value below dmDelaySeconds is raised to it. Ignored when trigger=story_reply, which has no public reply.
25533
25537
  */
25534
25538
  commentReplyDelaySeconds?: number;
25539
+ /**
25540
+ * Also fire these keywords on a plain inbound DM, so the automation answers people who message the keyword instead of commenting it. Requires at least one keyword (an empty keyword list means 'match anything', which would answer every inbound message) and is rejected on story_reply automations, which already trigger on DMs. Dedup is per door: a contact who already received the DM from their comment can still receive it from a DM.
25541
+ */
25542
+ alsoMatchInDms?: boolean;
25535
25543
  audience?: CommentAutomationAudience;
25536
25544
  followGate?: CommentAutomationFollowGate;
25537
25545
  };
@@ -25584,6 +25592,10 @@ type CreateCommentAutomationResponse = ({
25584
25592
  commentReplyDelaySeconds?: number;
25585
25593
  audience?: CommentAutomationAudience;
25586
25594
  followGate?: CommentAutomationFollowGate;
25595
+ /**
25596
+ * Whether these keywords also fire on a plain inbound DM.
25597
+ */
25598
+ alsoMatchInDms?: boolean;
25587
25599
  isActive?: boolean;
25588
25600
  stats?: {
25589
25601
  totalTriggered?: number;
@@ -25652,6 +25664,10 @@ type GetCommentAutomationResponse = ({
25652
25664
  commentReplyDelaySeconds?: number;
25653
25665
  audience?: CommentAutomationAudience;
25654
25666
  followGate?: CommentAutomationFollowGate;
25667
+ /**
25668
+ * Whether these keywords also fire on a plain inbound DM.
25669
+ */
25670
+ alsoMatchInDms?: boolean;
25655
25671
  isActive?: boolean;
25656
25672
  stats?: {
25657
25673
  totalTriggered?: number;
@@ -25667,6 +25683,10 @@ type GetCommentAutomationResponse = ({
25667
25683
  commenterId?: string;
25668
25684
  commenterName?: string;
25669
25685
  commentText?: string;
25686
+ /**
25687
+ * Which door triggered this send. Absent on rows written before this field existed (all of those are comment-triggered).
25688
+ */
25689
+ source?: 'comment' | 'story_reply' | 'dm';
25670
25690
  /**
25671
25691
  * DM outcome. 'pending' = the automation has a dmDelaySeconds and the response is queued but not sent yet. 'gated' = the follow-gate confirmation DM went out and we are waiting for the tap; it flips to 'sent' or 'skipped' when they tap.
25672
25692
  */
@@ -25748,6 +25768,10 @@ type UpdateCommentAutomationData = {
25748
25768
  * Tag applied to a contact when they click a tracked link (requires linkTracking). Empty string clears it.
25749
25769
  */
25750
25770
  clickTag?: string;
25771
+ /**
25772
+ * Also fire these keywords on a plain inbound DM. Enabling it requires the automation to end up with at least one keyword (this request's keywords if you send them, otherwise the stored ones) and is rejected on story_reply automations.
25773
+ */
25774
+ alsoMatchInDms?: boolean;
25751
25775
  /**
25752
25776
  * Seconds to wait after the trigger before sending the DM. Send 0 to clear the delay and reply immediately.
25753
25777
  */
@@ -25799,6 +25823,10 @@ type UpdateCommentAutomationResponse = ({
25799
25823
  commentReplyVariations?: Array<(string)>;
25800
25824
  audience?: CommentAutomationAudience;
25801
25825
  followGate?: CommentAutomationFollowGate;
25826
+ /**
25827
+ * Whether these keywords also fire on a plain inbound DM.
25828
+ */
25829
+ alsoMatchInDms?: boolean;
25802
25830
  isActive?: boolean;
25803
25831
  updatedAt?: string;
25804
25832
  };
@@ -25836,6 +25864,10 @@ type ListCommentAutomationLogsResponse = ({
25836
25864
  commenterId?: string;
25837
25865
  commenterName?: string;
25838
25866
  commentText?: string;
25867
+ /**
25868
+ * Which door triggered this send. Absent on rows written before this field existed (all of those are comment-triggered).
25869
+ */
25870
+ source?: 'comment' | 'story_reply' | 'dm';
25839
25871
  /**
25840
25872
  * DM outcome. 'pending' = the automation has a dmDelaySeconds and the response is queued but not sent yet. 'gated' = the follow-gate confirmation DM went out and we are waiting for the tap; it flips to 'sent' or 'skipped' when they tap.
25841
25873
  */
package/dist/index.d.ts CHANGED
@@ -25416,6 +25416,10 @@ type ListCommentAutomationsResponse = ({
25416
25416
  * Seconds waited before the public reply is posted. Absent when it follows the DM immediately.
25417
25417
  */
25418
25418
  commentReplyDelaySeconds?: number;
25419
+ /**
25420
+ * Whether these keywords also fire on a plain inbound DM.
25421
+ */
25422
+ alsoMatchInDms?: boolean;
25419
25423
  isActive?: boolean;
25420
25424
  stats?: {
25421
25425
  triggered?: number;
@@ -25532,6 +25536,10 @@ type CreateCommentAutomationData = {
25532
25536
  * Seconds to wait before posting the public comment reply. Omit or send 0 to post it right after the DM (the default). The reply never goes out before the DM, so a value below dmDelaySeconds is raised to it. Ignored when trigger=story_reply, which has no public reply.
25533
25537
  */
25534
25538
  commentReplyDelaySeconds?: number;
25539
+ /**
25540
+ * Also fire these keywords on a plain inbound DM, so the automation answers people who message the keyword instead of commenting it. Requires at least one keyword (an empty keyword list means 'match anything', which would answer every inbound message) and is rejected on story_reply automations, which already trigger on DMs. Dedup is per door: a contact who already received the DM from their comment can still receive it from a DM.
25541
+ */
25542
+ alsoMatchInDms?: boolean;
25535
25543
  audience?: CommentAutomationAudience;
25536
25544
  followGate?: CommentAutomationFollowGate;
25537
25545
  };
@@ -25584,6 +25592,10 @@ type CreateCommentAutomationResponse = ({
25584
25592
  commentReplyDelaySeconds?: number;
25585
25593
  audience?: CommentAutomationAudience;
25586
25594
  followGate?: CommentAutomationFollowGate;
25595
+ /**
25596
+ * Whether these keywords also fire on a plain inbound DM.
25597
+ */
25598
+ alsoMatchInDms?: boolean;
25587
25599
  isActive?: boolean;
25588
25600
  stats?: {
25589
25601
  totalTriggered?: number;
@@ -25652,6 +25664,10 @@ type GetCommentAutomationResponse = ({
25652
25664
  commentReplyDelaySeconds?: number;
25653
25665
  audience?: CommentAutomationAudience;
25654
25666
  followGate?: CommentAutomationFollowGate;
25667
+ /**
25668
+ * Whether these keywords also fire on a plain inbound DM.
25669
+ */
25670
+ alsoMatchInDms?: boolean;
25655
25671
  isActive?: boolean;
25656
25672
  stats?: {
25657
25673
  totalTriggered?: number;
@@ -25667,6 +25683,10 @@ type GetCommentAutomationResponse = ({
25667
25683
  commenterId?: string;
25668
25684
  commenterName?: string;
25669
25685
  commentText?: string;
25686
+ /**
25687
+ * Which door triggered this send. Absent on rows written before this field existed (all of those are comment-triggered).
25688
+ */
25689
+ source?: 'comment' | 'story_reply' | 'dm';
25670
25690
  /**
25671
25691
  * DM outcome. 'pending' = the automation has a dmDelaySeconds and the response is queued but not sent yet. 'gated' = the follow-gate confirmation DM went out and we are waiting for the tap; it flips to 'sent' or 'skipped' when they tap.
25672
25692
  */
@@ -25748,6 +25768,10 @@ type UpdateCommentAutomationData = {
25748
25768
  * Tag applied to a contact when they click a tracked link (requires linkTracking). Empty string clears it.
25749
25769
  */
25750
25770
  clickTag?: string;
25771
+ /**
25772
+ * Also fire these keywords on a plain inbound DM. Enabling it requires the automation to end up with at least one keyword (this request's keywords if you send them, otherwise the stored ones) and is rejected on story_reply automations.
25773
+ */
25774
+ alsoMatchInDms?: boolean;
25751
25775
  /**
25752
25776
  * Seconds to wait after the trigger before sending the DM. Send 0 to clear the delay and reply immediately.
25753
25777
  */
@@ -25799,6 +25823,10 @@ type UpdateCommentAutomationResponse = ({
25799
25823
  commentReplyVariations?: Array<(string)>;
25800
25824
  audience?: CommentAutomationAudience;
25801
25825
  followGate?: CommentAutomationFollowGate;
25826
+ /**
25827
+ * Whether these keywords also fire on a plain inbound DM.
25828
+ */
25829
+ alsoMatchInDms?: boolean;
25802
25830
  isActive?: boolean;
25803
25831
  updatedAt?: string;
25804
25832
  };
@@ -25836,6 +25864,10 @@ type ListCommentAutomationLogsResponse = ({
25836
25864
  commenterId?: string;
25837
25865
  commenterName?: string;
25838
25866
  commentText?: string;
25867
+ /**
25868
+ * Which door triggered this send. Absent on rows written before this field existed (all of those are comment-triggered).
25869
+ */
25870
+ source?: 'comment' | 'story_reply' | 'dm';
25839
25871
  /**
25840
25872
  * DM outcome. 'pending' = the automation has a dmDelaySeconds and the response is queued but not sent yet. 'gated' = the follow-gate confirmation DM went out and we are waiting for the tap; it flips to 'sent' or 'skipped' when they tap.
25841
25873
  */
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.532",
39
+ version: "0.2.533",
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.532",
8
+ version: "0.2.533",
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.532",
3
+ "version": "0.2.533",
4
4
  "description": "The official Node.js library for the Zernio API",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",
@@ -6751,6 +6751,12 @@ export const listCommentAutomations = <ThrowOnError extends boolean = false>(opt
6751
6751
  * confirmation DM (`followGate`) and then delivers the real DM automatically. People we
6752
6752
  * already know follow you skip the tap entirely.
6753
6753
  *
6754
+ * Set `alsoMatchInDms: true` on a `comment` automation to also answer people who send
6755
+ * a keyword as a direct message instead of commenting it. One automation then covers
6756
+ * both doors, and each door is deduplicated separately (someone who already got the DM
6757
+ * from their comment still gets it if they later DM the keyword). Requires at least one
6758
+ * keyword.
6759
+ *
6754
6760
  * Links in the DM's buttons can be click-tracked (`linkTracking`, on by default) and
6755
6761
  * clickers optionally tagged (`clickTag`) for segmentation. Stats returned include
6756
6762
  * delivered, read, and link clicks.
@@ -25768,6 +25768,10 @@ export type ListCommentAutomationsResponse = ({
25768
25768
  * Seconds waited before the public reply is posted. Absent when it follows the DM immediately.
25769
25769
  */
25770
25770
  commentReplyDelaySeconds?: number;
25771
+ /**
25772
+ * Whether these keywords also fire on a plain inbound DM.
25773
+ */
25774
+ alsoMatchInDms?: boolean;
25771
25775
  isActive?: boolean;
25772
25776
  stats?: {
25773
25777
  triggered?: number;
@@ -25886,6 +25890,10 @@ export type CreateCommentAutomationData = {
25886
25890
  * Seconds to wait before posting the public comment reply. Omit or send 0 to post it right after the DM (the default). The reply never goes out before the DM, so a value below dmDelaySeconds is raised to it. Ignored when trigger=story_reply, which has no public reply.
25887
25891
  */
25888
25892
  commentReplyDelaySeconds?: number;
25893
+ /**
25894
+ * Also fire these keywords on a plain inbound DM, so the automation answers people who message the keyword instead of commenting it. Requires at least one keyword (an empty keyword list means 'match anything', which would answer every inbound message) and is rejected on story_reply automations, which already trigger on DMs. Dedup is per door: a contact who already received the DM from their comment can still receive it from a DM.
25895
+ */
25896
+ alsoMatchInDms?: boolean;
25889
25897
  audience?: CommentAutomationAudience;
25890
25898
  followGate?: CommentAutomationFollowGate;
25891
25899
  };
@@ -25939,6 +25947,10 @@ export type CreateCommentAutomationResponse = ({
25939
25947
  commentReplyDelaySeconds?: number;
25940
25948
  audience?: CommentAutomationAudience;
25941
25949
  followGate?: CommentAutomationFollowGate;
25950
+ /**
25951
+ * Whether these keywords also fire on a plain inbound DM.
25952
+ */
25953
+ alsoMatchInDms?: boolean;
25942
25954
  isActive?: boolean;
25943
25955
  stats?: {
25944
25956
  totalTriggered?: number;
@@ -26010,6 +26022,10 @@ export type GetCommentAutomationResponse = ({
26010
26022
  commentReplyDelaySeconds?: number;
26011
26023
  audience?: CommentAutomationAudience;
26012
26024
  followGate?: CommentAutomationFollowGate;
26025
+ /**
26026
+ * Whether these keywords also fire on a plain inbound DM.
26027
+ */
26028
+ alsoMatchInDms?: boolean;
26013
26029
  isActive?: boolean;
26014
26030
  stats?: {
26015
26031
  totalTriggered?: number;
@@ -26025,6 +26041,10 @@ export type GetCommentAutomationResponse = ({
26025
26041
  commenterId?: string;
26026
26042
  commenterName?: string;
26027
26043
  commentText?: string;
26044
+ /**
26045
+ * Which door triggered this send. Absent on rows written before this field existed (all of those are comment-triggered).
26046
+ */
26047
+ source?: 'comment' | 'story_reply' | 'dm';
26028
26048
  /**
26029
26049
  * DM outcome. 'pending' = the automation has a dmDelaySeconds and the response is queued but not sent yet. 'gated' = the follow-gate confirmation DM went out and we are waiting for the tap; it flips to 'sent' or 'skipped' when they tap.
26030
26050
  */
@@ -26108,6 +26128,10 @@ export type UpdateCommentAutomationData = {
26108
26128
  * Tag applied to a contact when they click a tracked link (requires linkTracking). Empty string clears it.
26109
26129
  */
26110
26130
  clickTag?: string;
26131
+ /**
26132
+ * Also fire these keywords on a plain inbound DM. Enabling it requires the automation to end up with at least one keyword (this request's keywords if you send them, otherwise the stored ones) and is rejected on story_reply automations.
26133
+ */
26134
+ alsoMatchInDms?: boolean;
26111
26135
  /**
26112
26136
  * Seconds to wait after the trigger before sending the DM. Send 0 to clear the delay and reply immediately.
26113
26137
  */
@@ -26160,6 +26184,10 @@ export type UpdateCommentAutomationResponse = ({
26160
26184
  commentReplyVariations?: Array<(string)>;
26161
26185
  audience?: CommentAutomationAudience;
26162
26186
  followGate?: CommentAutomationFollowGate;
26187
+ /**
26188
+ * Whether these keywords also fire on a plain inbound DM.
26189
+ */
26190
+ alsoMatchInDms?: boolean;
26163
26191
  isActive?: boolean;
26164
26192
  updatedAt?: string;
26165
26193
  };
@@ -26203,6 +26231,10 @@ export type ListCommentAutomationLogsResponse = ({
26203
26231
  commenterId?: string;
26204
26232
  commenterName?: string;
26205
26233
  commentText?: string;
26234
+ /**
26235
+ * Which door triggered this send. Absent on rows written before this field existed (all of those are comment-triggered).
26236
+ */
26237
+ source?: 'comment' | 'story_reply' | 'dm';
26206
26238
  /**
26207
26239
  * DM outcome. 'pending' = the automation has a dmDelaySeconds and the response is queued but not sent yet. 'gated' = the follow-gate confirmation DM went out and we are waiting for the tap; it flips to 'sent' or 'skipped' when they tap.
26208
26240
  */