late-sdk 0.0.78 → 0.0.80

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.
Files changed (106) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +28 -1
  3. data/docs/BulkCreateContacts200Response.md +26 -0
  4. data/docs/CommentAutomationsApi.md +28 -24
  5. data/docs/ContactsApi.md +42 -36
  6. data/docs/CreateCommentAutomation200Response.md +20 -0
  7. data/docs/CreateCommentAutomation200ResponseAutomation.md +38 -0
  8. data/docs/CreateCommentAutomation200ResponseAutomationStats.md +22 -0
  9. data/docs/CreateContact200Response.md +24 -0
  10. data/docs/CreateContact200ResponseChannel.md +24 -0
  11. data/docs/CreateContact200ResponseContact.md +36 -0
  12. data/docs/CreateCustomField200Response.md +20 -0
  13. data/docs/CustomFieldsApi.md +21 -18
  14. data/docs/GetBroadcast200ResponseBroadcast.md +1 -1
  15. data/docs/GetCommentAutomation200Response.md +22 -0
  16. data/docs/GetCommentAutomation200ResponseAutomation.md +46 -0
  17. data/docs/GetCommentAutomation200ResponseLogsInner.md +32 -0
  18. data/docs/GetContact200Response.md +22 -0
  19. data/docs/GetContact200ResponseChannelsInner.md +32 -0
  20. data/docs/GetContact200ResponseContact.md +42 -0
  21. data/docs/GetContactChannels200Response.md +20 -0
  22. data/docs/GetContactChannels200ResponseChannelsInner.md +34 -0
  23. data/docs/ListCommentAutomationLogs200Response.md +22 -0
  24. data/docs/ListContacts200Response.md +24 -0
  25. data/docs/ListContacts200ResponseContactsInner.md +52 -0
  26. data/docs/{GetBroadcast200ResponseBroadcastSegmentFilters.md → ListContacts200ResponseFilters.md} +2 -2
  27. data/docs/ListCustomFields200Response.md +20 -0
  28. data/docs/ListCustomFields200ResponseFieldsInner.md +28 -0
  29. data/docs/ThreadsPlatformData.md +2 -0
  30. data/docs/UpdateCommentAutomation200Response.md +20 -0
  31. data/docs/UpdateCommentAutomation200ResponseAutomation.md +32 -0
  32. data/docs/UpdateContact200Response.md +20 -0
  33. data/docs/UpdateContact200ResponseContact.md +36 -0
  34. data/docs/UpdateCustomField200Response.md +20 -0
  35. data/docs/UpdateCustomField200ResponseField.md +26 -0
  36. data/lib/late-sdk/api/comment_automations_api.rb +20 -20
  37. data/lib/late-sdk/api/contacts_api.rb +30 -30
  38. data/lib/late-sdk/api/custom_fields_api.rb +15 -15
  39. data/lib/late-sdk/models/bulk_create_contacts200_response.rb +185 -0
  40. data/lib/late-sdk/models/create_comment_automation200_response.rb +156 -0
  41. data/lib/late-sdk/models/create_comment_automation200_response_automation.rb +273 -0
  42. data/lib/late-sdk/models/create_comment_automation200_response_automation_stats.rb +165 -0
  43. data/lib/late-sdk/models/create_contact200_response.rb +174 -0
  44. data/lib/late-sdk/models/create_contact200_response_channel.rb +175 -0
  45. data/lib/late-sdk/models/create_contact200_response_contact.rb +230 -0
  46. data/lib/late-sdk/models/create_custom_field200_response.rb +156 -0
  47. data/lib/late-sdk/models/get_broadcast200_response_broadcast.rb +1 -1
  48. data/lib/late-sdk/models/get_comment_automation200_response.rb +167 -0
  49. data/lib/late-sdk/models/get_comment_automation200_response_automation.rb +309 -0
  50. data/lib/late-sdk/models/get_comment_automation200_response_logs_inner.rb +244 -0
  51. data/lib/late-sdk/models/get_contact200_response.rb +167 -0
  52. data/lib/late-sdk/models/get_contact200_response_channels_inner.rb +210 -0
  53. data/lib/late-sdk/models/get_contact200_response_contact.rb +259 -0
  54. data/lib/late-sdk/models/get_contact_channels200_response.rb +158 -0
  55. data/lib/late-sdk/models/get_contact_channels200_response_channels_inner.rb +219 -0
  56. data/lib/late-sdk/models/list_comment_automation_logs200_response.rb +167 -0
  57. data/lib/late-sdk/models/list_contacts200_response.rb +176 -0
  58. data/lib/late-sdk/models/list_contacts200_response_contacts_inner.rb +302 -0
  59. data/lib/late-sdk/models/{get_broadcast200_response_broadcast_segment_filters.rb → list_contacts200_response_filters.rb} +3 -3
  60. data/lib/late-sdk/models/list_custom_fields200_response.rb +158 -0
  61. data/lib/late-sdk/models/list_custom_fields200_response_fields_inner.rb +228 -0
  62. data/lib/late-sdk/models/threads_platform_data.rb +39 -1
  63. data/lib/late-sdk/models/update_comment_automation200_response.rb +156 -0
  64. data/lib/late-sdk/models/update_comment_automation200_response_automation.rb +246 -0
  65. data/lib/late-sdk/models/update_contact200_response.rb +156 -0
  66. data/lib/late-sdk/models/update_contact200_response_contact.rb +230 -0
  67. data/lib/late-sdk/models/update_custom_field200_response.rb +156 -0
  68. data/lib/late-sdk/models/update_custom_field200_response_field.rb +185 -0
  69. data/lib/late-sdk/version.rb +1 -1
  70. data/lib/late-sdk.rb +28 -1
  71. data/openapi.yaml +329 -13
  72. data/spec/api/comment_automations_api_spec.rb +4 -4
  73. data/spec/api/contacts_api_spec.rb +6 -6
  74. data/spec/api/custom_fields_api_spec.rb +3 -3
  75. data/spec/models/bulk_create_contacts200_response_spec.rb +60 -0
  76. data/spec/models/create_comment_automation200_response_automation_spec.rb +100 -0
  77. data/spec/models/create_comment_automation200_response_automation_stats_spec.rb +48 -0
  78. data/spec/models/create_comment_automation200_response_spec.rb +42 -0
  79. data/spec/models/create_contact200_response_channel_spec.rb +54 -0
  80. data/spec/models/create_contact200_response_contact_spec.rb +90 -0
  81. data/spec/models/create_contact200_response_spec.rb +54 -0
  82. data/spec/models/create_custom_field200_response_spec.rb +42 -0
  83. data/spec/models/get_comment_automation200_response_automation_spec.rb +124 -0
  84. data/spec/models/get_comment_automation200_response_logs_inner_spec.rb +82 -0
  85. data/spec/models/get_comment_automation200_response_spec.rb +48 -0
  86. data/spec/models/get_contact200_response_channels_inner_spec.rb +78 -0
  87. data/spec/models/get_contact200_response_contact_spec.rb +108 -0
  88. data/spec/models/get_contact200_response_spec.rb +48 -0
  89. data/spec/models/get_contact_channels200_response_channels_inner_spec.rb +84 -0
  90. data/spec/models/get_contact_channels200_response_spec.rb +42 -0
  91. data/spec/models/list_comment_automation_logs200_response_spec.rb +48 -0
  92. data/spec/models/list_contacts200_response_contacts_inner_spec.rb +138 -0
  93. data/spec/models/{get_broadcast200_response_broadcast_segment_filters_spec.rb → list_contacts200_response_filters_spec.rb} +6 -6
  94. data/spec/models/list_contacts200_response_spec.rb +54 -0
  95. data/spec/models/list_custom_fields200_response_fields_inner_spec.rb +70 -0
  96. data/spec/models/list_custom_fields200_response_spec.rb +42 -0
  97. data/spec/models/threads_platform_data_spec.rb +6 -0
  98. data/spec/models/update_comment_automation200_response_automation_spec.rb +82 -0
  99. data/spec/models/update_comment_automation200_response_spec.rb +42 -0
  100. data/spec/models/update_contact200_response_contact_spec.rb +90 -0
  101. data/spec/models/update_contact200_response_spec.rb +42 -0
  102. data/spec/models/update_custom_field200_response_field_spec.rb +60 -0
  103. data/spec/models/update_custom_field200_response_spec.rb +42 -0
  104. data/zernio-sdk-0.0.80.gem +0 -0
  105. metadata +115 -7
  106. data/zernio-sdk-0.0.78.gem +0 -0
data/openapi.yaml CHANGED
@@ -1397,6 +1397,11 @@ components:
1397
1397
  ThreadsPlatformData:
1398
1398
  type: object
1399
1399
  properties:
1400
+ topic_tag:
1401
+ type: string
1402
+ minLength: 1
1403
+ maxLength: 50
1404
+ description: Topic tag for post categorization and discoverability on Threads. Must be 1-50 characters, cannot contain periods (.) or ampersands (&). Overrides auto-extraction from content hashtags when provided.
1400
1405
  threadItems:
1401
1406
  type: array
1402
1407
  description: Sequence of posts in a Threads thread (root then replies in order).
@@ -14592,7 +14597,48 @@ paths:
14592
14597
  - { name: limit, in: query, schema: { type: integer, default: 50, maximum: 200 } }
14593
14598
  - { name: skip, in: query, schema: { type: integer, default: 0 } }
14594
14599
  responses:
14595
- '200': { description: Contacts list with pagination and filter metadata }
14600
+ '200':
14601
+ description: Contacts list with pagination and filter metadata
14602
+ content:
14603
+ application/json:
14604
+ schema:
14605
+ type: object
14606
+ properties:
14607
+ success: { type: boolean }
14608
+ contacts:
14609
+ type: array
14610
+ items:
14611
+ type: object
14612
+ properties:
14613
+ id: { type: string }
14614
+ name: { type: string }
14615
+ email: { type: string }
14616
+ company: { type: string }
14617
+ avatarUrl: { type: string }
14618
+ tags: { type: array, items: { type: string } }
14619
+ isSubscribed: { type: boolean }
14620
+ isBlocked: { type: boolean }
14621
+ lastMessageSentAt: { type: string, format: date-time }
14622
+ lastMessageReceivedAt: { type: string, format: date-time }
14623
+ messagesSentCount: { type: integer }
14624
+ messagesReceivedCount: { type: integer }
14625
+ customFields: { type: object }
14626
+ notes: { type: string }
14627
+ createdAt: { type: string, format: date-time }
14628
+ platform: { type: string }
14629
+ platformIdentifier: { type: string }
14630
+ displayIdentifier: { type: string }
14631
+ filters:
14632
+ type: object
14633
+ properties:
14634
+ tags: { type: array, items: { type: string } }
14635
+ pagination:
14636
+ type: object
14637
+ properties:
14638
+ total: { type: integer }
14639
+ limit: { type: integer }
14640
+ skip: { type: integer }
14641
+ hasMore: { type: boolean }
14596
14642
  '401': { $ref: '#/components/responses/Unauthorized' }
14597
14643
  post:
14598
14644
  operationId: createContact
@@ -14619,7 +14665,36 @@ paths:
14619
14665
  platformIdentifier: { type: string }
14620
14666
  displayIdentifier: { type: string }
14621
14667
  responses:
14622
- '200': { description: Contact created }
14668
+ '200':
14669
+ description: Contact created
14670
+ content:
14671
+ application/json:
14672
+ schema:
14673
+ type: object
14674
+ properties:
14675
+ success: { type: boolean }
14676
+ contact:
14677
+ type: object
14678
+ properties:
14679
+ id: { type: string }
14680
+ name: { type: string }
14681
+ email: { type: string }
14682
+ company: { type: string }
14683
+ tags: { type: array, items: { type: string } }
14684
+ isSubscribed: { type: boolean }
14685
+ isBlocked: { type: boolean }
14686
+ customFields: { type: object }
14687
+ notes: { type: string }
14688
+ createdAt: { type: string, format: date-time }
14689
+ channel:
14690
+ type: object
14691
+ description: Created when accountId, platform, and platformIdentifier are provided
14692
+ properties:
14693
+ id: { type: string }
14694
+ platform: { type: string }
14695
+ platformIdentifier: { type: string }
14696
+ displayIdentifier: { type: string }
14697
+ warning: { type: string }
14623
14698
  '401': { $ref: '#/components/responses/Unauthorized' }
14624
14699
  '409': { description: Duplicate contact }
14625
14700
 
@@ -14631,7 +14706,43 @@ paths:
14631
14706
  parameters:
14632
14707
  - { name: contactId, in: path, required: true, schema: { type: string } }
14633
14708
  responses:
14634
- '200': { description: Contact with channels }
14709
+ '200':
14710
+ description: Contact with channels
14711
+ content:
14712
+ application/json:
14713
+ schema:
14714
+ type: object
14715
+ properties:
14716
+ success: { type: boolean }
14717
+ contact:
14718
+ type: object
14719
+ properties:
14720
+ id: { type: string }
14721
+ name: { type: string }
14722
+ email: { type: string }
14723
+ company: { type: string }
14724
+ avatarUrl: { type: string }
14725
+ tags: { type: array, items: { type: string } }
14726
+ isSubscribed: { type: boolean }
14727
+ isBlocked: { type: boolean }
14728
+ customFields: { type: object }
14729
+ notes: { type: string }
14730
+ conversationIds: { type: array, items: { type: string } }
14731
+ createdAt: { type: string, format: date-time }
14732
+ updatedAt: { type: string, format: date-time }
14733
+ channels:
14734
+ type: array
14735
+ items:
14736
+ type: object
14737
+ properties:
14738
+ id: { type: string }
14739
+ accountId: { type: string }
14740
+ platform: { type: string }
14741
+ platformIdentifier: { type: string }
14742
+ displayIdentifier: { type: string }
14743
+ isSubscribed: { type: boolean }
14744
+ conversationId: { type: string }
14745
+ createdAt: { type: string, format: date-time }
14635
14746
  '401': { $ref: '#/components/responses/Unauthorized' }
14636
14747
  '404': { $ref: '#/components/responses/NotFound' }
14637
14748
  patch:
@@ -14655,7 +14766,27 @@ paths:
14655
14766
  isBlocked: { type: boolean }
14656
14767
  notes: { type: string }
14657
14768
  responses:
14658
- '200': { description: Contact updated }
14769
+ '200':
14770
+ description: Contact updated
14771
+ content:
14772
+ application/json:
14773
+ schema:
14774
+ type: object
14775
+ properties:
14776
+ success: { type: boolean }
14777
+ contact:
14778
+ type: object
14779
+ properties:
14780
+ id: { type: string }
14781
+ name: { type: string }
14782
+ email: { type: string }
14783
+ company: { type: string }
14784
+ avatarUrl: { type: string }
14785
+ tags: { type: array, items: { type: string } }
14786
+ isSubscribed: { type: boolean }
14787
+ isBlocked: { type: boolean }
14788
+ notes: { type: string }
14789
+ updatedAt: { type: string, format: date-time }
14659
14790
  '401': { $ref: '#/components/responses/Unauthorized' }
14660
14791
  '404': { $ref: '#/components/responses/NotFound' }
14661
14792
  delete:
@@ -14677,7 +14808,28 @@ paths:
14677
14808
  parameters:
14678
14809
  - { name: contactId, in: path, required: true, schema: { type: string } }
14679
14810
  responses:
14680
- '200': { description: List of contact channels }
14811
+ '200':
14812
+ description: List of contact channels
14813
+ content:
14814
+ application/json:
14815
+ schema:
14816
+ type: object
14817
+ properties:
14818
+ success: { type: boolean }
14819
+ channels:
14820
+ type: array
14821
+ items:
14822
+ type: object
14823
+ properties:
14824
+ id: { type: string }
14825
+ accountId: { type: string }
14826
+ platform: { type: string }
14827
+ platformIdentifier: { type: string }
14828
+ displayIdentifier: { type: string }
14829
+ isSubscribed: { type: boolean }
14830
+ conversationId: { type: string }
14831
+ metadata: { type: object }
14832
+ createdAt: { type: string, format: date-time }
14681
14833
  '401': { $ref: '#/components/responses/Unauthorized' }
14682
14834
  '404': { $ref: '#/components/responses/NotFound' }
14683
14835
 
@@ -14712,7 +14864,18 @@ paths:
14712
14864
  company: { type: string }
14713
14865
  tags: { type: array, items: { type: string } }
14714
14866
  responses:
14715
- '200': { description: Bulk import results }
14867
+ '200':
14868
+ description: Bulk import results
14869
+ content:
14870
+ application/json:
14871
+ schema:
14872
+ type: object
14873
+ properties:
14874
+ success: { type: boolean }
14875
+ created: { type: integer }
14876
+ skipped: { type: integer }
14877
+ errors: { type: array, items: { type: object } }
14878
+ total: { type: integer }
14716
14879
  '401': { $ref: '#/components/responses/Unauthorized' }
14717
14880
 
14718
14881
  /v1/contacts/{contactId}/fields/{slug}:
@@ -14758,7 +14921,25 @@ paths:
14758
14921
  parameters:
14759
14922
  - { name: profileId, in: query, schema: { type: string }, description: Filter by profile. Omit to list across all profiles }
14760
14923
  responses:
14761
- '200': { description: List of custom field definitions }
14924
+ '200':
14925
+ description: List of custom field definitions
14926
+ content:
14927
+ application/json:
14928
+ schema:
14929
+ type: object
14930
+ properties:
14931
+ success: { type: boolean }
14932
+ fields:
14933
+ type: array
14934
+ items:
14935
+ type: object
14936
+ properties:
14937
+ id: { type: string }
14938
+ name: { type: string }
14939
+ slug: { type: string }
14940
+ type: { type: string, enum: [text, number, date, boolean, select] }
14941
+ options: { type: array, items: { type: string } }
14942
+ createdAt: { type: string, format: date-time }
14762
14943
  '401': { $ref: '#/components/responses/Unauthorized' }
14763
14944
  post:
14764
14945
  operationId: createCustomField
@@ -14778,7 +14959,23 @@ paths:
14778
14959
  type: { type: string, enum: [text, number, date, boolean, select] }
14779
14960
  options: { type: array, items: { type: string }, description: Required for select type }
14780
14961
  responses:
14781
- '200': { description: Custom field created }
14962
+ '200':
14963
+ description: Custom field created
14964
+ content:
14965
+ application/json:
14966
+ schema:
14967
+ type: object
14968
+ properties:
14969
+ success: { type: boolean }
14970
+ field:
14971
+ type: object
14972
+ properties:
14973
+ id: { type: string }
14974
+ name: { type: string }
14975
+ slug: { type: string }
14976
+ type: { type: string, enum: [text, number, date, boolean, select] }
14977
+ options: { type: array, items: { type: string } }
14978
+ createdAt: { type: string, format: date-time }
14782
14979
  '401': { $ref: '#/components/responses/Unauthorized' }
14783
14980
  '409': { description: Duplicate slug }
14784
14981
 
@@ -14798,7 +14995,22 @@ paths:
14798
14995
  name: { type: string }
14799
14996
  options: { type: array, items: { type: string } }
14800
14997
  responses:
14801
- '200': { description: Custom field updated }
14998
+ '200':
14999
+ description: Custom field updated
15000
+ content:
15001
+ application/json:
15002
+ schema:
15003
+ type: object
15004
+ properties:
15005
+ success: { type: boolean }
15006
+ field:
15007
+ type: object
15008
+ properties:
15009
+ id: { type: string }
15010
+ name: { type: string }
15011
+ slug: { type: string }
15012
+ type: { type: string }
15013
+ options: { type: array, items: { type: string } }
14802
15014
  '401': { $ref: '#/components/responses/Unauthorized' }
14803
15015
  '404': { $ref: '#/components/responses/NotFound' }
14804
15016
  delete:
@@ -15566,7 +15778,28 @@ paths:
15566
15778
  dmMessage: { type: string, description: DM text to send to commenter }
15567
15779
  commentReply: { type: string, description: Optional public reply to the comment }
15568
15780
  responses:
15569
- '200': { description: Automation created }
15781
+ '200':
15782
+ description: Automation created
15783
+ content:
15784
+ application/json:
15785
+ schema:
15786
+ type: object
15787
+ properties:
15788
+ success: { type: boolean }
15789
+ automation:
15790
+ type: object
15791
+ properties:
15792
+ id: { type: string }
15793
+ name: { type: string }
15794
+ platform: { type: string }
15795
+ platformPostId: { type: string }
15796
+ keywords: { type: array, items: { type: string } }
15797
+ matchMode: { type: string, enum: [exact, contains] }
15798
+ dmMessage: { type: string }
15799
+ commentReply: { type: string }
15800
+ isActive: { type: boolean }
15801
+ stats: { type: object, properties: { totalTriggered: { type: integer }, totalSent: { type: integer }, totalFailed: { type: integer } } }
15802
+ createdAt: { type: string, format: date-time }
15570
15803
  '400': { description: Validation error }
15571
15804
  '401': { $ref: '#/components/responses/Unauthorized' }
15572
15805
  '409': { description: Active automation already exists for this post }
@@ -15581,7 +15814,45 @@ paths:
15581
15814
  parameters:
15582
15815
  - { name: automationId, in: path, required: true, schema: { type: string } }
15583
15816
  responses:
15584
- '200': { description: Automation details with stats and recent trigger logs }
15817
+ '200':
15818
+ description: Automation details with stats and recent trigger logs
15819
+ content:
15820
+ application/json:
15821
+ schema:
15822
+ type: object
15823
+ properties:
15824
+ success: { type: boolean }
15825
+ automation:
15826
+ type: object
15827
+ properties:
15828
+ id: { type: string }
15829
+ name: { type: string }
15830
+ platform: { type: string }
15831
+ accountId: { type: string }
15832
+ platformPostId: { type: string }
15833
+ postId: { type: string }
15834
+ postTitle: { type: string }
15835
+ keywords: { type: array, items: { type: string } }
15836
+ matchMode: { type: string, enum: [exact, contains] }
15837
+ dmMessage: { type: string }
15838
+ commentReply: { type: string }
15839
+ isActive: { type: boolean }
15840
+ stats: { type: object, properties: { totalTriggered: { type: integer }, totalSent: { type: integer }, totalFailed: { type: integer } } }
15841
+ createdAt: { type: string, format: date-time }
15842
+ updatedAt: { type: string, format: date-time }
15843
+ logs:
15844
+ type: array
15845
+ items:
15846
+ type: object
15847
+ properties:
15848
+ id: { type: string }
15849
+ commentId: { type: string }
15850
+ commenterId: { type: string }
15851
+ commenterName: { type: string }
15852
+ commentText: { type: string }
15853
+ status: { type: string, enum: [sent, failed, skipped] }
15854
+ error: { type: string }
15855
+ createdAt: { type: string, format: date-time }
15585
15856
  '401': { $ref: '#/components/responses/Unauthorized' }
15586
15857
  '404': { $ref: '#/components/responses/NotFound' }
15587
15858
  patch:
@@ -15605,7 +15876,25 @@ paths:
15605
15876
  commentReply: { type: string }
15606
15877
  isActive: { type: boolean }
15607
15878
  responses:
15608
- '200': { description: Automation updated }
15879
+ '200':
15880
+ description: Automation updated
15881
+ content:
15882
+ application/json:
15883
+ schema:
15884
+ type: object
15885
+ properties:
15886
+ success: { type: boolean }
15887
+ automation:
15888
+ type: object
15889
+ properties:
15890
+ id: { type: string }
15891
+ name: { type: string }
15892
+ keywords: { type: array, items: { type: string } }
15893
+ matchMode: { type: string, enum: [exact, contains] }
15894
+ dmMessage: { type: string }
15895
+ commentReply: { type: string }
15896
+ isActive: { type: boolean }
15897
+ updatedAt: { type: string, format: date-time }
15609
15898
  '401': { $ref: '#/components/responses/Unauthorized' }
15610
15899
  '404': { $ref: '#/components/responses/NotFound' }
15611
15900
  delete:
@@ -15635,7 +15924,34 @@ paths:
15635
15924
  - { name: limit, in: query, schema: { type: integer, default: 50 } }
15636
15925
  - { name: skip, in: query, schema: { type: integer, default: 0 } }
15637
15926
  responses:
15638
- '200': { description: Trigger logs with pagination }
15927
+ '200':
15928
+ description: Trigger logs with pagination
15929
+ content:
15930
+ application/json:
15931
+ schema:
15932
+ type: object
15933
+ properties:
15934
+ success: { type: boolean }
15935
+ logs:
15936
+ type: array
15937
+ items:
15938
+ type: object
15939
+ properties:
15940
+ id: { type: string }
15941
+ commentId: { type: string }
15942
+ commenterId: { type: string }
15943
+ commenterName: { type: string }
15944
+ commentText: { type: string }
15945
+ status: { type: string, enum: [sent, failed, skipped] }
15946
+ error: { type: string }
15947
+ createdAt: { type: string, format: date-time }
15948
+ pagination:
15949
+ type: object
15950
+ properties:
15951
+ total: { type: integer }
15952
+ limit: { type: integer }
15953
+ skip: { type: integer }
15954
+ hasMore: { type: boolean }
15639
15955
  '401': { $ref: '#/components/responses/Unauthorized' }
15640
15956
  '404': { $ref: '#/components/responses/NotFound' }
15641
15957
 
@@ -37,7 +37,7 @@ describe 'CommentAutomationsApi' do
37
37
  # Create a keyword-triggered DM automation on an Instagram or Facebook post. When someone comments a matching keyword, they automatically receive a DM. Only one active automation per post is allowed.
38
38
  # @param create_comment_automation_request
39
39
  # @param [Hash] opts the optional parameters
40
- # @return [nil]
40
+ # @return [CreateCommentAutomation200Response]
41
41
  describe 'create_comment_automation test' do
42
42
  it 'should work' do
43
43
  # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
@@ -59,7 +59,7 @@ describe 'CommentAutomationsApi' do
59
59
  # Get automation details with recent logs
60
60
  # @param automation_id
61
61
  # @param [Hash] opts the optional parameters
62
- # @return [nil]
62
+ # @return [GetCommentAutomation200Response]
63
63
  describe 'get_comment_automation test' do
64
64
  it 'should work' do
65
65
  # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
@@ -74,7 +74,7 @@ describe 'CommentAutomationsApi' do
74
74
  # @option opts [String] :status Filter by result status
75
75
  # @option opts [Integer] :limit
76
76
  # @option opts [Integer] :skip
77
- # @return [nil]
77
+ # @return [ListCommentAutomationLogs200Response]
78
78
  describe 'list_comment_automation_logs test' do
79
79
  it 'should work' do
80
80
  # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
@@ -98,7 +98,7 @@ describe 'CommentAutomationsApi' do
98
98
  # @param automation_id
99
99
  # @param [Hash] opts the optional parameters
100
100
  # @option opts [UpdateCommentAutomationRequest] :update_comment_automation_request
101
- # @return [nil]
101
+ # @return [UpdateCommentAutomation200Response]
102
102
  describe 'update_comment_automation test' do
103
103
  it 'should work' do
104
104
  # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
@@ -37,7 +37,7 @@ describe 'ContactsApi' do
37
37
  # Import up to 1000 contacts at a time. Skips duplicates.
38
38
  # @param bulk_create_contacts_request
39
39
  # @param [Hash] opts the optional parameters
40
- # @return [nil]
40
+ # @return [BulkCreateContacts200Response]
41
41
  describe 'bulk_create_contacts test' do
42
42
  it 'should work' do
43
43
  # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
@@ -49,7 +49,7 @@ describe 'ContactsApi' do
49
49
  # Create a new contact. Optionally create a platform channel in the same request by providing accountId, platform, and platformIdentifier.
50
50
  # @param create_contact_request
51
51
  # @param [Hash] opts the optional parameters
52
- # @return [nil]
52
+ # @return [CreateContact200Response]
53
53
  describe 'create_contact test' do
54
54
  it 'should work' do
55
55
  # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
@@ -71,7 +71,7 @@ describe 'ContactsApi' do
71
71
  # Get contact with channels
72
72
  # @param contact_id
73
73
  # @param [Hash] opts the optional parameters
74
- # @return [nil]
74
+ # @return [GetContact200Response]
75
75
  describe 'get_contact test' do
76
76
  it 'should work' do
77
77
  # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
@@ -82,7 +82,7 @@ describe 'ContactsApi' do
82
82
  # List channels for a contact
83
83
  # @param contact_id
84
84
  # @param [Hash] opts the optional parameters
85
- # @return [nil]
85
+ # @return [GetContactChannels200Response]
86
86
  describe 'get_contact_channels test' do
87
87
  it 'should work' do
88
88
  # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
@@ -100,7 +100,7 @@ describe 'ContactsApi' do
100
100
  # @option opts [String] :is_subscribed
101
101
  # @option opts [Integer] :limit
102
102
  # @option opts [Integer] :skip
103
- # @return [nil]
103
+ # @return [ListContacts200Response]
104
104
  describe 'list_contacts test' do
105
105
  it 'should work' do
106
106
  # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
@@ -112,7 +112,7 @@ describe 'ContactsApi' do
112
112
  # @param contact_id
113
113
  # @param [Hash] opts the optional parameters
114
114
  # @option opts [UpdateContactRequest] :update_contact_request
115
- # @return [nil]
115
+ # @return [UpdateContact200Response]
116
116
  describe 'update_contact test' do
117
117
  it 'should work' do
118
118
  # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
@@ -48,7 +48,7 @@ describe 'CustomFieldsApi' do
48
48
  # Create a custom field definition
49
49
  # @param create_custom_field_request
50
50
  # @param [Hash] opts the optional parameters
51
- # @return [nil]
51
+ # @return [CreateCustomField200Response]
52
52
  describe 'create_custom_field test' do
53
53
  it 'should work' do
54
54
  # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
@@ -70,7 +70,7 @@ describe 'CustomFieldsApi' do
70
70
  # List custom field definitions
71
71
  # @param [Hash] opts the optional parameters
72
72
  # @option opts [String] :profile_id Filter by profile. Omit to list across all profiles
73
- # @return [nil]
73
+ # @return [ListCustomFields200Response]
74
74
  describe 'list_custom_fields test' do
75
75
  it 'should work' do
76
76
  # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
@@ -95,7 +95,7 @@ describe 'CustomFieldsApi' do
95
95
  # @param field_id
96
96
  # @param [Hash] opts the optional parameters
97
97
  # @option opts [UpdateCustomFieldRequest] :update_custom_field_request
98
- # @return [nil]
98
+ # @return [UpdateCustomField200Response]
99
99
  describe 'update_custom_field test' do
100
100
  it 'should work' do
101
101
  # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
@@ -0,0 +1,60 @@
1
+ =begin
2
+ #Zernio API
3
+
4
+ #API reference for Zernio. Authenticate with a Bearer API key. Base URL: https://zernio.com/api
5
+
6
+ The version of the OpenAPI document: 1.0.1
7
+ Contact: support@zernio.com
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.19.0
10
+
11
+ =end
12
+
13
+ require 'spec_helper'
14
+ require 'json'
15
+ require 'date'
16
+
17
+ # Unit tests for Late::BulkCreateContacts200Response
18
+ # Automatically generated by openapi-generator (https://openapi-generator.tech)
19
+ # Please update as you see appropriate
20
+ describe Late::BulkCreateContacts200Response do
21
+ #let(:instance) { Late::BulkCreateContacts200Response.new }
22
+
23
+ describe 'test an instance of BulkCreateContacts200Response' do
24
+ it 'should create an instance of BulkCreateContacts200Response' do
25
+ # uncomment below to test the instance creation
26
+ #expect(instance).to be_instance_of(Late::BulkCreateContacts200Response)
27
+ end
28
+ end
29
+
30
+ describe 'test attribute "success"' do
31
+ it 'should work' do
32
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
33
+ end
34
+ end
35
+
36
+ describe 'test attribute "created"' do
37
+ it 'should work' do
38
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
39
+ end
40
+ end
41
+
42
+ describe 'test attribute "skipped"' do
43
+ it 'should work' do
44
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
45
+ end
46
+ end
47
+
48
+ describe 'test attribute "errors"' do
49
+ it 'should work' do
50
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
51
+ end
52
+ end
53
+
54
+ describe 'test attribute "total"' do
55
+ it 'should work' do
56
+ # assertion here. ref: https://rspec.info/features/3-12/rspec-expectations/built-in-matchers/
57
+ end
58
+ end
59
+
60
+ end