@zernio/node 0.2.60 → 0.2.62

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/README.md CHANGED
@@ -209,17 +209,17 @@ try {
209
209
  | `analytics.getBestTimeToPost()` | Get best times to post |
210
210
  | `analytics.getContentDecay()` | Get content performance decay |
211
211
  | `analytics.getDailyMetrics()` | Get daily aggregated metrics |
212
- | `analytics.getGoogleBusinessPerformance()` | Get Google Business Profile performance metrics |
213
- | `analytics.getGoogleBusinessSearchKeywords()` | Get Google Business Profile search keywords |
214
- | `analytics.getInstagramAccountInsights()` | Get Instagram account-level insights |
215
- | `analytics.getInstagramDemographics()` | Get Instagram audience demographics |
212
+ | `analytics.getGoogleBusinessPerformance()` | Get GBP performance metrics |
213
+ | `analytics.getGoogleBusinessSearchKeywords()` | Get GBP search keywords |
214
+ | `analytics.getInstagramAccountInsights()` | Get Instagram insights |
215
+ | `analytics.getInstagramDemographics()` | Get Instagram demographics |
216
216
  | `analytics.getLinkedInAggregateAnalytics()` | Get LinkedIn aggregate stats |
217
217
  | `analytics.getLinkedInPostAnalytics()` | Get LinkedIn post stats |
218
218
  | `analytics.getLinkedInPostReactions()` | Get LinkedIn post reactions |
219
- | `analytics.getPostingFrequency()` | Get posting frequency vs engagement |
219
+ | `analytics.getPostingFrequency()` | Get frequency vs engagement |
220
220
  | `analytics.getPostTimeline()` | Get post analytics timeline |
221
221
  | `analytics.getYouTubeDailyViews()` | Get YouTube daily views |
222
- | `analytics.getYouTubeDemographics()` | Get YouTube audience demographics |
222
+ | `analytics.getYouTubeDemographics()` | Get YouTube demographics |
223
223
 
224
224
  ### Account Groups
225
225
  | Method | Description |
@@ -258,7 +258,7 @@ try {
258
258
  ### Media
259
259
  | Method | Description |
260
260
  |--------|-------------|
261
- | `media.getMediaPresignedUrl()` | Get presigned upload URL |
261
+ | `media.getMediaPresignedUrl()` | Get upload URL |
262
262
 
263
263
  ### Users
264
264
  | Method | Description |
@@ -335,29 +335,29 @@ try {
335
335
  | Method | Description |
336
336
  |--------|-------------|
337
337
  | `adAudiences.listAdAudiences()` | List custom audiences |
338
- | `adAudiences.createAdAudience()` | Create a custom audience (Meta only) |
338
+ | `adAudiences.createAdAudience()` | Create custom audience |
339
339
  | `adAudiences.getAdAudience()` | Get audience details |
340
- | `adAudiences.deleteAdAudience()` | Delete a custom audience |
341
- | `adAudiences.addUsersToAdAudience()` | Add users to a customer list audience |
340
+ | `adAudiences.deleteAdAudience()` | Delete custom audience |
341
+ | `adAudiences.addUsersToAdAudience()` | Add users to audience |
342
342
 
343
343
  ### Ad Campaigns
344
344
  | Method | Description |
345
345
  |--------|-------------|
346
- | `adCampaigns.listAdCampaigns()` | List campaigns with aggregate metrics |
347
- | `adCampaigns.getAdTree()` | Get nested campaign/ad-set/ad tree |
346
+ | `adCampaigns.listAdCampaigns()` | List campaigns |
347
+ | `adCampaigns.getAdTree()` | Get campaign tree |
348
348
  | `adCampaigns.updateAdCampaignStatus()` | Pause or resume a campaign |
349
349
 
350
350
  ### Ads
351
351
  | Method | Description |
352
352
  |--------|-------------|
353
- | `ads.listAdAccounts()` | List ad accounts for a social account |
353
+ | `ads.listAdAccounts()` | List ad accounts |
354
354
  | `ads.listAds()` | List ads |
355
- | `ads.createStandaloneAd()` | Create a standalone ad with custom creative |
355
+ | `ads.createStandaloneAd()` | Create standalone ad |
356
356
  | `ads.getAd()` | Get ad details |
357
- | `ads.getAdAnalytics()` | Get ad analytics with daily breakdown |
358
- | `ads.updateAd()` | Update ad (pause/resume, budget, targeting, name) |
357
+ | `ads.getAdAnalytics()` | Get ad analytics |
358
+ | `ads.updateAd()` | Update ad |
359
359
  | `ads.deleteAd()` | Cancel an ad |
360
- | `ads.boostPost()` | Boost an existing post as a paid ad |
360
+ | `ads.boostPost()` | Boost post as ad |
361
361
  | `ads.searchAdInterests()` | Search targeting interests |
362
362
 
363
363
  ### Broadcasts
@@ -365,24 +365,24 @@ try {
365
365
  |--------|-------------|
366
366
  | `broadcasts.listBroadcastRecipients()` | List broadcast recipients |
367
367
  | `broadcasts.listBroadcasts()` | List broadcasts |
368
- | `broadcasts.createBroadcast()` | Create a broadcast draft |
368
+ | `broadcasts.createBroadcast()` | Create broadcast draft |
369
369
  | `broadcasts.getBroadcast()` | Get broadcast details |
370
- | `broadcasts.updateBroadcast()` | Update a broadcast |
371
- | `broadcasts.deleteBroadcast()` | Delete a broadcast (draft only) |
370
+ | `broadcasts.updateBroadcast()` | Update broadcast |
371
+ | `broadcasts.deleteBroadcast()` | Delete broadcast |
372
372
  | `broadcasts.addBroadcastRecipients()` | Add recipients to a broadcast |
373
- | `broadcasts.cancelBroadcast()` | Cancel a broadcast |
373
+ | `broadcasts.cancelBroadcast()` | Cancel broadcast |
374
374
  | `broadcasts.scheduleBroadcast()` | Schedule broadcast for later |
375
- | `broadcasts.sendBroadcast()` | Trigger immediate send |
375
+ | `broadcasts.sendBroadcast()` | Send broadcast now |
376
376
 
377
377
  ### Comment Automations
378
378
  | Method | Description |
379
379
  |--------|-------------|
380
- | `commentAutomations.listCommentAutomationLogs()` | List trigger logs for an automation |
380
+ | `commentAutomations.listCommentAutomationLogs()` | List automation logs |
381
381
  | `commentAutomations.listCommentAutomations()` | List comment-to-DM automations |
382
- | `commentAutomations.createCommentAutomation()` | Create a comment-to-DM automation |
383
- | `commentAutomations.getCommentAutomation()` | Get automation details with recent logs |
382
+ | `commentAutomations.createCommentAutomation()` | Create comment-to-DM automation |
383
+ | `commentAutomations.getCommentAutomation()` | Get automation details |
384
384
  | `commentAutomations.updateCommentAutomation()` | Update automation settings |
385
- | `commentAutomations.deleteCommentAutomation()` | Delete automation and all logs |
385
+ | `commentAutomations.deleteCommentAutomation()` | Delete automation |
386
386
 
387
387
  ### Comments (Inbox)
388
388
  | Method | Description |
@@ -402,21 +402,21 @@ try {
402
402
  |--------|-------------|
403
403
  | `contacts.listContacts()` | List contacts |
404
404
  | `contacts.bulkCreateContacts()` | Bulk create contacts |
405
- | `contacts.createContact()` | Create a contact |
406
- | `contacts.getContact()` | Get contact with channels |
405
+ | `contacts.createContact()` | Create contact |
406
+ | `contacts.getContact()` | Get contact |
407
407
  | `contacts.getContactChannels()` | List channels for a contact |
408
- | `contacts.updateContact()` | Update a contact |
409
- | `contacts.deleteContact()` | Delete a contact |
408
+ | `contacts.updateContact()` | Update contact |
409
+ | `contacts.deleteContact()` | Delete contact |
410
410
 
411
411
  ### Custom Fields
412
412
  | Method | Description |
413
413
  |--------|-------------|
414
414
  | `customFields.listCustomFields()` | List custom field definitions |
415
- | `customFields.createCustomField()` | Create a custom field definition |
416
- | `customFields.updateCustomField()` | Update a custom field definition |
417
- | `customFields.deleteCustomField()` | Delete a custom field definition |
418
- | `customFields.clearContactFieldValue()` | Clear a custom field value |
419
- | `customFields.setContactFieldValue()` | Set a custom field value |
415
+ | `customFields.createCustomField()` | Create custom field |
416
+ | `customFields.updateCustomField()` | Update custom field |
417
+ | `customFields.deleteCustomField()` | Delete custom field |
418
+ | `customFields.clearContactFieldValue()` | Clear custom field value |
419
+ | `customFields.setContactFieldValue()` | Set custom field value |
420
420
 
421
421
  ### GMB Attributes
422
422
  | Method | Description |
@@ -478,14 +478,14 @@ try {
478
478
  |--------|-------------|
479
479
  | `sequences.listSequenceEnrollments()` | List enrollments for a sequence |
480
480
  | `sequences.listSequences()` | List sequences |
481
- | `sequences.createSequence()` | Create a sequence |
481
+ | `sequences.createSequence()` | Create sequence |
482
482
  | `sequences.getSequence()` | Get sequence with steps |
483
- | `sequences.updateSequence()` | Update a sequence |
484
- | `sequences.deleteSequence()` | Delete a sequence |
485
- | `sequences.activateSequence()` | Activate a sequence |
483
+ | `sequences.updateSequence()` | Update sequence |
484
+ | `sequences.deleteSequence()` | Delete sequence |
485
+ | `sequences.activateSequence()` | Activate sequence |
486
486
  | `sequences.enrollContacts()` | Enroll contacts in a sequence |
487
- | `sequences.pauseSequence()` | Pause a sequence |
488
- | `sequences.unenrollContact()` | Unenroll a contact from a sequence |
487
+ | `sequences.pauseSequence()` | Pause sequence |
488
+ | `sequences.unenrollContact()` | Unenroll contact |
489
489
 
490
490
  ### Twitter Engagement
491
491
  | Method | Description |
@@ -502,7 +502,7 @@ try {
502
502
  |--------|-------------|
503
503
  | `validate.validateMedia()` | Validate media URL |
504
504
  | `validate.validatePost()` | Validate post content |
505
- | `validate.validatePostLength()` | Validate post character count |
505
+ | `validate.validatePostLength()` | Validate character count |
506
506
  | `validate.validateSubreddit()` | Check subreddit existence |
507
507
 
508
508
  ### WhatsApp
@@ -514,7 +514,7 @@ try {
514
514
  | `whatsapp.createWhatsAppGroupInviteLink()` | Create invite link |
515
515
  | `whatsapp.createWhatsAppTemplate()` | Create template |
516
516
  | `whatsapp.getWhatsAppBusinessProfile()` | Get business profile |
517
- | `whatsapp.getWhatsAppDisplayName()` | Get display name and review status |
517
+ | `whatsapp.getWhatsAppDisplayName()` | Get display name status |
518
518
  | `whatsapp.getWhatsAppGroupChat()` | Get group info |
519
519
  | `whatsapp.getWhatsAppTemplate()` | Get template |
520
520
  | `whatsapp.getWhatsAppTemplates()` | List templates |
package/dist/index.d.mts CHANGED
@@ -583,7 +583,6 @@ type AccountsListResponse = {
583
583
  hasAnalyticsAccess?: boolean;
584
584
  };
585
585
  type AccountWithFollowerStats = SocialAccount & {
586
- profilePicture?: string;
587
586
  /**
588
587
  * Current follower count
589
588
  */
@@ -1227,7 +1226,7 @@ type GoogleBusinessPlatformData = {
1227
1226
  */
1228
1227
  type type2 = 'LEARN_MORE' | 'BOOK' | 'ORDER' | 'SHOP' | 'SIGN_UP' | 'CALL';
1229
1228
  /**
1230
- * The `account` context included in inbox webhook payloads.
1229
+ * The account context included in inbox webhook payloads.
1231
1230
  */
1232
1231
  type InboxWebhookAccount = {
1233
1232
  /**
@@ -1239,7 +1238,7 @@ type InboxWebhookAccount = {
1239
1238
  displayName?: string;
1240
1239
  };
1241
1240
  /**
1242
- * The `conversation` context included in inbox webhook payloads.
1241
+ * The conversation context included in inbox webhook payloads.
1243
1242
  */
1244
1243
  type InboxWebhookConversation = {
1245
1244
  id: string;
@@ -1252,7 +1251,7 @@ type InboxWebhookConversation = {
1252
1251
  };
1253
1252
  type status3 = 'active' | 'archived';
1254
1253
  /**
1255
- * The `message` object included in inbox webhook payloads.
1254
+ * The message object included in inbox webhook payloads.
1256
1255
  */
1257
1256
  type InboxWebhookMessage = {
1258
1257
  /**
@@ -2093,6 +2092,10 @@ type SocialAccount = {
2093
2092
  profileId?: (string | Profile);
2094
2093
  username?: string;
2095
2094
  displayName?: string;
2095
+ /**
2096
+ * URL to the account's profile picture on the platform. May be null if the platform does not provide one.
2097
+ */
2098
+ profilePicture?: (string) | null;
2096
2099
  /**
2097
2100
  * Full profile URL for the connected account on its platform.
2098
2101
  */
@@ -2122,13 +2125,13 @@ type SocialAccount = {
2122
2125
  enabled?: boolean;
2123
2126
  /**
2124
2127
  * Platform-specific metadata. Fields vary by platform. For WhatsApp accounts, includes:
2125
- * - `qualityRating`: Phone number quality rating from Meta (`GREEN`, `YELLOW`, `RED`, or `UNKNOWN`)
2126
- * - `nameStatus`: Display name review status (`APPROVED`, `PENDING_REVIEW`, `DECLINED`, or `NONE`). Messages cannot be sent until the display name is approved by Meta.
2127
- * - `messagingLimitTier`: Maximum unique business-initiated conversations per 24h rolling window (`TIER_250`, `TIER_1K`, `TIER_10K`, `TIER_100K`, or `TIER_UNLIMITED`). Scales automatically as quality rating improves.
2128
- * - `verifiedName`: Meta-verified business display name
2129
- * - `displayPhoneNumber`: Formatted phone number (e.g., "+1 555-123-4567")
2130
- * - `wabaId`: WhatsApp Business Account ID
2131
- * - `phoneNumberId`: Meta phone number ID
2128
+ * - qualityRating: Phone number quality rating from Meta (GREEN, YELLOW, RED, or UNKNOWN)
2129
+ * - nameStatus: Display name review status (APPROVED, PENDING_REVIEW, DECLINED, or NONE). Messages cannot be sent until the display name is approved by Meta.
2130
+ * - messagingLimitTier: Maximum unique business-initiated conversations per 24h rolling window (TIER_250, TIER_1K, TIER_10K, TIER_100K, or TIER_UNLIMITED). Scales automatically as quality rating improves.
2131
+ * - verifiedName: Meta-verified business display name
2132
+ * - displayPhoneNumber: Formatted phone number (e.g., "+1 555-123-4567")
2133
+ * - wabaId: WhatsApp Business Account ID
2134
+ * - phoneNumberId: Meta phone number ID
2132
2135
  *
2133
2136
  */
2134
2137
  metadata?: {
@@ -2182,17 +2185,17 @@ type ThreadsPlatformData = {
2182
2185
  * Photo carousels up to 35 images. Video titles up to 2200 chars, photo titles truncated to 90 chars.
2183
2186
  * privacyLevel must match creator_info options. Both camelCase and snake_case accepted.
2184
2187
  *
2185
- * **Creator Inbox (draft mode):** Set `draft: true` to send content to the TikTok Creator Inbox
2188
+ * Creator Inbox (draft mode): Set draft: true to send content to the TikTok Creator Inbox
2186
2189
  * instead of publishing immediately. The creator receives an inbox notification and completes
2187
- * the post using TikTok's editing flow. This maps to TikTok's `post_mode: "MEDIA_UPLOAD"` internally.
2190
+ * the post using TikTok's editing flow. This maps to TikTok's post_mode: "MEDIA_UPLOAD" internally.
2188
2191
  *
2189
- * **Important:** The field `publish_type` is NOT supported. Use `draft: true` for Creator Inbox flow.
2192
+ * Important: The field publish_type is NOT supported. Use draft: true for Creator Inbox flow.
2190
2193
  *
2191
- * **Photo drafts** use the `/v2/post/publish/content/init/` endpoint with `post_mode: "MEDIA_UPLOAD"`.
2192
- * **Video drafts** use the dedicated `/v2/post/publish/inbox/video/init/` endpoint.
2194
+ * Photo drafts use the /v2/post/publish/content/init/ endpoint with post_mode: "MEDIA_UPLOAD".
2195
+ * Video drafts use the dedicated /v2/post/publish/inbox/video/init/ endpoint.
2193
2196
  *
2194
- * When `draft: true`, the `video.upload` scope is required. When `draft` is false or omitted
2195
- * (direct post), the `video.publish` scope is required. For Creator Inbox, TikTok app version
2197
+ * When draft: true, the video.upload scope is required. When draft is false or omitted
2198
+ * (direct post), the video.publish scope is required. For Creator Inbox, TikTok app version
2196
2199
  * must be 31.8 or higher.
2197
2200
  *
2198
2201
  */
@@ -2200,9 +2203,9 @@ type TikTokPlatformData = {
2200
2203
  /**
2201
2204
  * When true, sends the post to the TikTok Creator Inbox as a draft instead of publishing
2202
2205
  * immediately. The creator receives an inbox notification to complete posting via TikTok's
2203
- * editing flow. Maps to TikTok API `post_mode: "MEDIA_UPLOAD"` (photos) or the dedicated
2204
- * inbox endpoint (videos). When false or omitted, publishes directly via `post_mode: "DIRECT_POST"`.
2205
- * Note: `publish_type` is not a supported field. Use this field instead.
2206
+ * editing flow. Maps to TikTok API post_mode: "MEDIA_UPLOAD" (photos) or the dedicated
2207
+ * inbox endpoint (videos). When false or omitted, publishes directly via post_mode: "DIRECT_POST".
2208
+ * Note: publish_type is not a supported field. Use this field instead.
2206
2209
  *
2207
2210
  */
2208
2211
  draft?: boolean;
@@ -2663,12 +2666,12 @@ type WebhookPayloadMessage = {
2663
2666
  };
2664
2667
  type event4 = 'message.received';
2665
2668
  /**
2666
- * Webhook payload for `message.deleted` events. Fires when the sender
2669
+ * Webhook payload for message.deleted events. Fires when the sender
2667
2670
  * deletes (unsends) a message. Supported platforms: Instagram (incoming
2668
2671
  * unsend) and WhatsApp (when the business deletes an outgoing message
2669
2672
  * via the Cloud API).
2670
2673
  *
2671
- * The `message.text` and `message.attachments` fields retain the content
2674
+ * The message.text and message.attachments fields retain the content
2672
2675
  * that existed before the delete. The Zernio dashboard UI does not show
2673
2676
  * this content, but authorized API consumers may access it for
2674
2677
  * moderation, compliance, or archival use cases.
@@ -2685,14 +2688,14 @@ type WebhookPayloadMessageDeleted = {
2685
2688
  };
2686
2689
  type event5 = 'message.deleted';
2687
2690
  /**
2688
- * Shared payload for `message.delivered`, `message.read`, and
2689
- * `message.failed` events. Fires when the platform reports a new
2691
+ * Shared payload for message.delivered, message.read, and
2692
+ * message.failed events. Fires when the platform reports a new
2690
2693
  * delivery state for an outgoing message.
2691
2694
  *
2692
2695
  * Platform support:
2693
- * * `message.delivered` — WhatsApp, Facebook Messenger.
2694
- * * `message.read` — WhatsApp, Facebook Messenger, Instagram.
2695
- * * `message.failed` — WhatsApp only (other platforms don't expose
2696
+ * * message.delivered — WhatsApp, Facebook Messenger.
2697
+ * * message.read — WhatsApp, Facebook Messenger, Instagram.
2698
+ * * message.failed — WhatsApp only (other platforms don't expose
2696
2699
  * per-message failure via webhook).
2697
2700
  *
2698
2701
  */
@@ -2705,7 +2708,7 @@ type WebhookPayloadMessageDeliveryStatus = {
2705
2708
  */
2706
2709
  statusAt: string;
2707
2710
  /**
2708
- * Populated only on `message.failed`.
2711
+ * Populated only on message.failed.
2709
2712
  */
2710
2713
  error?: {
2711
2714
  code?: number;
@@ -2718,10 +2721,10 @@ type WebhookPayloadMessageDeliveryStatus = {
2718
2721
  };
2719
2722
  type event6 = 'message.delivered' | 'message.read' | 'message.failed';
2720
2723
  /**
2721
- * Webhook payload for `message.edited` events. Fires when the sender
2724
+ * Webhook payload for message.edited events. Fires when the sender
2722
2725
  * edits a previously-sent message. Supported platforms: Instagram,
2723
- * Facebook Messenger, Telegram. The `message` object reflects the
2724
- * LATEST state; `editHistory` contains every prior version in order
2726
+ * Facebook Messenger, Telegram. The message object reflects the
2727
+ * LATEST state; editHistory contains every prior version in order
2725
2728
  * (oldest first), so the last entry is the version immediately before
2726
2729
  * the current content.
2727
2730
  *
@@ -7088,19 +7091,19 @@ type CreateInboxConversationData = {
7088
7091
  */
7089
7092
  accountId: string;
7090
7093
  /**
7091
- * Twitter numeric user ID of the recipient. Provide either this or `participantUsername`.
7094
+ * Twitter numeric user ID of the recipient. Provide either this or participantUsername.
7092
7095
  */
7093
7096
  participantId?: string;
7094
7097
  /**
7095
- * Twitter username (with or without @) of the recipient. Resolved to a user ID via lookup. Provide either this or `participantId`.
7098
+ * Twitter username (with or without @) of the recipient. Resolved to a user ID via lookup. Provide either this or participantId.
7096
7099
  */
7097
7100
  participantUsername?: string;
7098
7101
  /**
7099
- * Text content of the message. At least one of `message` or attachment is required.
7102
+ * Text content of the message. At least one of message or attachment is required.
7100
7103
  */
7101
7104
  message?: string;
7102
7105
  /**
7103
- * Skip the `receives_your_dm` eligibility check before sending. Use if you have already verified the recipient accepts DMs.
7106
+ * Skip the receives_your_dm eligibility check before sending. Use if you have already verified the recipient accepts DMs.
7104
7107
  */
7105
7108
  skipDmCheck?: boolean;
7106
7109
  };
@@ -7307,7 +7310,7 @@ type GetInboxConversationMessagesResponse = ({
7307
7310
  editedAt?: string;
7308
7311
  }>;
7309
7312
  /**
7310
- * True if the sender has deleted (unsent) this message. The original `message` and `attachments` fields remain populated.
7313
+ * True if the sender has deleted (unsent) this message. The original message and attachments fields remain populated.
7311
7314
  */
7312
7315
  isDeleted?: boolean;
7313
7316
  deletedAt?: (string) | null;
@@ -7322,7 +7325,7 @@ type GetInboxConversationMessagesResponse = ({
7322
7325
  */
7323
7326
  sentAt?: (string) | null;
7324
7327
  /**
7325
- * Populated when `deliveryStatus === "failed"`.
7328
+ * Populated when deliveryStatus === "failed".
7326
7329
  */
7327
7330
  deliveryError?: {
7328
7331
  code?: number;
@@ -8468,7 +8471,7 @@ type CreateWhatsAppTemplateData = {
8468
8471
  /**
8469
8472
  * Name of a pre-built template from Meta's template library (e.g., "appointment_reminder",
8470
8473
  * "auto_pay_reminder_1", "address_update"). When provided, the template is pre-approved
8471
- * by Meta with no review wait. Omit `components` when using this field.
8474
+ * by Meta with no review wait. Omit components when using this field.
8472
8475
  *
8473
8476
  */
8474
8477
  library_template_name?: string;
package/dist/index.d.ts CHANGED
@@ -583,7 +583,6 @@ type AccountsListResponse = {
583
583
  hasAnalyticsAccess?: boolean;
584
584
  };
585
585
  type AccountWithFollowerStats = SocialAccount & {
586
- profilePicture?: string;
587
586
  /**
588
587
  * Current follower count
589
588
  */
@@ -1227,7 +1226,7 @@ type GoogleBusinessPlatformData = {
1227
1226
  */
1228
1227
  type type2 = 'LEARN_MORE' | 'BOOK' | 'ORDER' | 'SHOP' | 'SIGN_UP' | 'CALL';
1229
1228
  /**
1230
- * The `account` context included in inbox webhook payloads.
1229
+ * The account context included in inbox webhook payloads.
1231
1230
  */
1232
1231
  type InboxWebhookAccount = {
1233
1232
  /**
@@ -1239,7 +1238,7 @@ type InboxWebhookAccount = {
1239
1238
  displayName?: string;
1240
1239
  };
1241
1240
  /**
1242
- * The `conversation` context included in inbox webhook payloads.
1241
+ * The conversation context included in inbox webhook payloads.
1243
1242
  */
1244
1243
  type InboxWebhookConversation = {
1245
1244
  id: string;
@@ -1252,7 +1251,7 @@ type InboxWebhookConversation = {
1252
1251
  };
1253
1252
  type status3 = 'active' | 'archived';
1254
1253
  /**
1255
- * The `message` object included in inbox webhook payloads.
1254
+ * The message object included in inbox webhook payloads.
1256
1255
  */
1257
1256
  type InboxWebhookMessage = {
1258
1257
  /**
@@ -2093,6 +2092,10 @@ type SocialAccount = {
2093
2092
  profileId?: (string | Profile);
2094
2093
  username?: string;
2095
2094
  displayName?: string;
2095
+ /**
2096
+ * URL to the account's profile picture on the platform. May be null if the platform does not provide one.
2097
+ */
2098
+ profilePicture?: (string) | null;
2096
2099
  /**
2097
2100
  * Full profile URL for the connected account on its platform.
2098
2101
  */
@@ -2122,13 +2125,13 @@ type SocialAccount = {
2122
2125
  enabled?: boolean;
2123
2126
  /**
2124
2127
  * Platform-specific metadata. Fields vary by platform. For WhatsApp accounts, includes:
2125
- * - `qualityRating`: Phone number quality rating from Meta (`GREEN`, `YELLOW`, `RED`, or `UNKNOWN`)
2126
- * - `nameStatus`: Display name review status (`APPROVED`, `PENDING_REVIEW`, `DECLINED`, or `NONE`). Messages cannot be sent until the display name is approved by Meta.
2127
- * - `messagingLimitTier`: Maximum unique business-initiated conversations per 24h rolling window (`TIER_250`, `TIER_1K`, `TIER_10K`, `TIER_100K`, or `TIER_UNLIMITED`). Scales automatically as quality rating improves.
2128
- * - `verifiedName`: Meta-verified business display name
2129
- * - `displayPhoneNumber`: Formatted phone number (e.g., "+1 555-123-4567")
2130
- * - `wabaId`: WhatsApp Business Account ID
2131
- * - `phoneNumberId`: Meta phone number ID
2128
+ * - qualityRating: Phone number quality rating from Meta (GREEN, YELLOW, RED, or UNKNOWN)
2129
+ * - nameStatus: Display name review status (APPROVED, PENDING_REVIEW, DECLINED, or NONE). Messages cannot be sent until the display name is approved by Meta.
2130
+ * - messagingLimitTier: Maximum unique business-initiated conversations per 24h rolling window (TIER_250, TIER_1K, TIER_10K, TIER_100K, or TIER_UNLIMITED). Scales automatically as quality rating improves.
2131
+ * - verifiedName: Meta-verified business display name
2132
+ * - displayPhoneNumber: Formatted phone number (e.g., "+1 555-123-4567")
2133
+ * - wabaId: WhatsApp Business Account ID
2134
+ * - phoneNumberId: Meta phone number ID
2132
2135
  *
2133
2136
  */
2134
2137
  metadata?: {
@@ -2182,17 +2185,17 @@ type ThreadsPlatformData = {
2182
2185
  * Photo carousels up to 35 images. Video titles up to 2200 chars, photo titles truncated to 90 chars.
2183
2186
  * privacyLevel must match creator_info options. Both camelCase and snake_case accepted.
2184
2187
  *
2185
- * **Creator Inbox (draft mode):** Set `draft: true` to send content to the TikTok Creator Inbox
2188
+ * Creator Inbox (draft mode): Set draft: true to send content to the TikTok Creator Inbox
2186
2189
  * instead of publishing immediately. The creator receives an inbox notification and completes
2187
- * the post using TikTok's editing flow. This maps to TikTok's `post_mode: "MEDIA_UPLOAD"` internally.
2190
+ * the post using TikTok's editing flow. This maps to TikTok's post_mode: "MEDIA_UPLOAD" internally.
2188
2191
  *
2189
- * **Important:** The field `publish_type` is NOT supported. Use `draft: true` for Creator Inbox flow.
2192
+ * Important: The field publish_type is NOT supported. Use draft: true for Creator Inbox flow.
2190
2193
  *
2191
- * **Photo drafts** use the `/v2/post/publish/content/init/` endpoint with `post_mode: "MEDIA_UPLOAD"`.
2192
- * **Video drafts** use the dedicated `/v2/post/publish/inbox/video/init/` endpoint.
2194
+ * Photo drafts use the /v2/post/publish/content/init/ endpoint with post_mode: "MEDIA_UPLOAD".
2195
+ * Video drafts use the dedicated /v2/post/publish/inbox/video/init/ endpoint.
2193
2196
  *
2194
- * When `draft: true`, the `video.upload` scope is required. When `draft` is false or omitted
2195
- * (direct post), the `video.publish` scope is required. For Creator Inbox, TikTok app version
2197
+ * When draft: true, the video.upload scope is required. When draft is false or omitted
2198
+ * (direct post), the video.publish scope is required. For Creator Inbox, TikTok app version
2196
2199
  * must be 31.8 or higher.
2197
2200
  *
2198
2201
  */
@@ -2200,9 +2203,9 @@ type TikTokPlatformData = {
2200
2203
  /**
2201
2204
  * When true, sends the post to the TikTok Creator Inbox as a draft instead of publishing
2202
2205
  * immediately. The creator receives an inbox notification to complete posting via TikTok's
2203
- * editing flow. Maps to TikTok API `post_mode: "MEDIA_UPLOAD"` (photos) or the dedicated
2204
- * inbox endpoint (videos). When false or omitted, publishes directly via `post_mode: "DIRECT_POST"`.
2205
- * Note: `publish_type` is not a supported field. Use this field instead.
2206
+ * editing flow. Maps to TikTok API post_mode: "MEDIA_UPLOAD" (photos) or the dedicated
2207
+ * inbox endpoint (videos). When false or omitted, publishes directly via post_mode: "DIRECT_POST".
2208
+ * Note: publish_type is not a supported field. Use this field instead.
2206
2209
  *
2207
2210
  */
2208
2211
  draft?: boolean;
@@ -2663,12 +2666,12 @@ type WebhookPayloadMessage = {
2663
2666
  };
2664
2667
  type event4 = 'message.received';
2665
2668
  /**
2666
- * Webhook payload for `message.deleted` events. Fires when the sender
2669
+ * Webhook payload for message.deleted events. Fires when the sender
2667
2670
  * deletes (unsends) a message. Supported platforms: Instagram (incoming
2668
2671
  * unsend) and WhatsApp (when the business deletes an outgoing message
2669
2672
  * via the Cloud API).
2670
2673
  *
2671
- * The `message.text` and `message.attachments` fields retain the content
2674
+ * The message.text and message.attachments fields retain the content
2672
2675
  * that existed before the delete. The Zernio dashboard UI does not show
2673
2676
  * this content, but authorized API consumers may access it for
2674
2677
  * moderation, compliance, or archival use cases.
@@ -2685,14 +2688,14 @@ type WebhookPayloadMessageDeleted = {
2685
2688
  };
2686
2689
  type event5 = 'message.deleted';
2687
2690
  /**
2688
- * Shared payload for `message.delivered`, `message.read`, and
2689
- * `message.failed` events. Fires when the platform reports a new
2691
+ * Shared payload for message.delivered, message.read, and
2692
+ * message.failed events. Fires when the platform reports a new
2690
2693
  * delivery state for an outgoing message.
2691
2694
  *
2692
2695
  * Platform support:
2693
- * * `message.delivered` — WhatsApp, Facebook Messenger.
2694
- * * `message.read` — WhatsApp, Facebook Messenger, Instagram.
2695
- * * `message.failed` — WhatsApp only (other platforms don't expose
2696
+ * * message.delivered — WhatsApp, Facebook Messenger.
2697
+ * * message.read — WhatsApp, Facebook Messenger, Instagram.
2698
+ * * message.failed — WhatsApp only (other platforms don't expose
2696
2699
  * per-message failure via webhook).
2697
2700
  *
2698
2701
  */
@@ -2705,7 +2708,7 @@ type WebhookPayloadMessageDeliveryStatus = {
2705
2708
  */
2706
2709
  statusAt: string;
2707
2710
  /**
2708
- * Populated only on `message.failed`.
2711
+ * Populated only on message.failed.
2709
2712
  */
2710
2713
  error?: {
2711
2714
  code?: number;
@@ -2718,10 +2721,10 @@ type WebhookPayloadMessageDeliveryStatus = {
2718
2721
  };
2719
2722
  type event6 = 'message.delivered' | 'message.read' | 'message.failed';
2720
2723
  /**
2721
- * Webhook payload for `message.edited` events. Fires when the sender
2724
+ * Webhook payload for message.edited events. Fires when the sender
2722
2725
  * edits a previously-sent message. Supported platforms: Instagram,
2723
- * Facebook Messenger, Telegram. The `message` object reflects the
2724
- * LATEST state; `editHistory` contains every prior version in order
2726
+ * Facebook Messenger, Telegram. The message object reflects the
2727
+ * LATEST state; editHistory contains every prior version in order
2725
2728
  * (oldest first), so the last entry is the version immediately before
2726
2729
  * the current content.
2727
2730
  *
@@ -7088,19 +7091,19 @@ type CreateInboxConversationData = {
7088
7091
  */
7089
7092
  accountId: string;
7090
7093
  /**
7091
- * Twitter numeric user ID of the recipient. Provide either this or `participantUsername`.
7094
+ * Twitter numeric user ID of the recipient. Provide either this or participantUsername.
7092
7095
  */
7093
7096
  participantId?: string;
7094
7097
  /**
7095
- * Twitter username (with or without @) of the recipient. Resolved to a user ID via lookup. Provide either this or `participantId`.
7098
+ * Twitter username (with or without @) of the recipient. Resolved to a user ID via lookup. Provide either this or participantId.
7096
7099
  */
7097
7100
  participantUsername?: string;
7098
7101
  /**
7099
- * Text content of the message. At least one of `message` or attachment is required.
7102
+ * Text content of the message. At least one of message or attachment is required.
7100
7103
  */
7101
7104
  message?: string;
7102
7105
  /**
7103
- * Skip the `receives_your_dm` eligibility check before sending. Use if you have already verified the recipient accepts DMs.
7106
+ * Skip the receives_your_dm eligibility check before sending. Use if you have already verified the recipient accepts DMs.
7104
7107
  */
7105
7108
  skipDmCheck?: boolean;
7106
7109
  };
@@ -7307,7 +7310,7 @@ type GetInboxConversationMessagesResponse = ({
7307
7310
  editedAt?: string;
7308
7311
  }>;
7309
7312
  /**
7310
- * True if the sender has deleted (unsent) this message. The original `message` and `attachments` fields remain populated.
7313
+ * True if the sender has deleted (unsent) this message. The original message and attachments fields remain populated.
7311
7314
  */
7312
7315
  isDeleted?: boolean;
7313
7316
  deletedAt?: (string) | null;
@@ -7322,7 +7325,7 @@ type GetInboxConversationMessagesResponse = ({
7322
7325
  */
7323
7326
  sentAt?: (string) | null;
7324
7327
  /**
7325
- * Populated when `deliveryStatus === "failed"`.
7328
+ * Populated when deliveryStatus === "failed".
7326
7329
  */
7327
7330
  deliveryError?: {
7328
7331
  code?: number;
@@ -8468,7 +8471,7 @@ type CreateWhatsAppTemplateData = {
8468
8471
  /**
8469
8472
  * Name of a pre-built template from Meta's template library (e.g., "appointment_reminder",
8470
8473
  * "auto_pay_reminder_1", "address_update"). When provided, the template is pre-approved
8471
- * by Meta with no review wait. Omit `components` when using this field.
8474
+ * by Meta with no review wait. Omit components when using this field.
8472
8475
  *
8473
8476
  */
8474
8477
  library_template_name?: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zernio/node",
3
- "version": "0.2.60",
3
+ "version": "0.2.62",
4
4
  "description": "The official Node.js library for the Zernio API",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",