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.
- checksums.yaml +4 -4
- data/README.md +28 -1
- data/docs/BulkCreateContacts200Response.md +26 -0
- data/docs/CommentAutomationsApi.md +28 -24
- data/docs/ContactsApi.md +42 -36
- data/docs/CreateCommentAutomation200Response.md +20 -0
- data/docs/CreateCommentAutomation200ResponseAutomation.md +38 -0
- data/docs/CreateCommentAutomation200ResponseAutomationStats.md +22 -0
- data/docs/CreateContact200Response.md +24 -0
- data/docs/CreateContact200ResponseChannel.md +24 -0
- data/docs/CreateContact200ResponseContact.md +36 -0
- data/docs/CreateCustomField200Response.md +20 -0
- data/docs/CustomFieldsApi.md +21 -18
- data/docs/GetBroadcast200ResponseBroadcast.md +1 -1
- data/docs/GetCommentAutomation200Response.md +22 -0
- data/docs/GetCommentAutomation200ResponseAutomation.md +46 -0
- data/docs/GetCommentAutomation200ResponseLogsInner.md +32 -0
- data/docs/GetContact200Response.md +22 -0
- data/docs/GetContact200ResponseChannelsInner.md +32 -0
- data/docs/GetContact200ResponseContact.md +42 -0
- data/docs/GetContactChannels200Response.md +20 -0
- data/docs/GetContactChannels200ResponseChannelsInner.md +34 -0
- data/docs/ListCommentAutomationLogs200Response.md +22 -0
- data/docs/ListContacts200Response.md +24 -0
- data/docs/ListContacts200ResponseContactsInner.md +52 -0
- data/docs/{GetBroadcast200ResponseBroadcastSegmentFilters.md → ListContacts200ResponseFilters.md} +2 -2
- data/docs/ListCustomFields200Response.md +20 -0
- data/docs/ListCustomFields200ResponseFieldsInner.md +28 -0
- data/docs/ThreadsPlatformData.md +2 -0
- data/docs/UpdateCommentAutomation200Response.md +20 -0
- data/docs/UpdateCommentAutomation200ResponseAutomation.md +32 -0
- data/docs/UpdateContact200Response.md +20 -0
- data/docs/UpdateContact200ResponseContact.md +36 -0
- data/docs/UpdateCustomField200Response.md +20 -0
- data/docs/UpdateCustomField200ResponseField.md +26 -0
- data/lib/late-sdk/api/comment_automations_api.rb +20 -20
- data/lib/late-sdk/api/contacts_api.rb +30 -30
- data/lib/late-sdk/api/custom_fields_api.rb +15 -15
- data/lib/late-sdk/models/bulk_create_contacts200_response.rb +185 -0
- data/lib/late-sdk/models/create_comment_automation200_response.rb +156 -0
- data/lib/late-sdk/models/create_comment_automation200_response_automation.rb +273 -0
- data/lib/late-sdk/models/create_comment_automation200_response_automation_stats.rb +165 -0
- data/lib/late-sdk/models/create_contact200_response.rb +174 -0
- data/lib/late-sdk/models/create_contact200_response_channel.rb +175 -0
- data/lib/late-sdk/models/create_contact200_response_contact.rb +230 -0
- data/lib/late-sdk/models/create_custom_field200_response.rb +156 -0
- data/lib/late-sdk/models/get_broadcast200_response_broadcast.rb +1 -1
- data/lib/late-sdk/models/get_comment_automation200_response.rb +167 -0
- data/lib/late-sdk/models/get_comment_automation200_response_automation.rb +309 -0
- data/lib/late-sdk/models/get_comment_automation200_response_logs_inner.rb +244 -0
- data/lib/late-sdk/models/get_contact200_response.rb +167 -0
- data/lib/late-sdk/models/get_contact200_response_channels_inner.rb +210 -0
- data/lib/late-sdk/models/get_contact200_response_contact.rb +259 -0
- data/lib/late-sdk/models/get_contact_channels200_response.rb +158 -0
- data/lib/late-sdk/models/get_contact_channels200_response_channels_inner.rb +219 -0
- data/lib/late-sdk/models/list_comment_automation_logs200_response.rb +167 -0
- data/lib/late-sdk/models/list_contacts200_response.rb +176 -0
- data/lib/late-sdk/models/list_contacts200_response_contacts_inner.rb +302 -0
- data/lib/late-sdk/models/{get_broadcast200_response_broadcast_segment_filters.rb → list_contacts200_response_filters.rb} +3 -3
- data/lib/late-sdk/models/list_custom_fields200_response.rb +158 -0
- data/lib/late-sdk/models/list_custom_fields200_response_fields_inner.rb +228 -0
- data/lib/late-sdk/models/threads_platform_data.rb +39 -1
- data/lib/late-sdk/models/update_comment_automation200_response.rb +156 -0
- data/lib/late-sdk/models/update_comment_automation200_response_automation.rb +246 -0
- data/lib/late-sdk/models/update_contact200_response.rb +156 -0
- data/lib/late-sdk/models/update_contact200_response_contact.rb +230 -0
- data/lib/late-sdk/models/update_custom_field200_response.rb +156 -0
- data/lib/late-sdk/models/update_custom_field200_response_field.rb +185 -0
- data/lib/late-sdk/version.rb +1 -1
- data/lib/late-sdk.rb +28 -1
- data/openapi.yaml +329 -13
- data/spec/api/comment_automations_api_spec.rb +4 -4
- data/spec/api/contacts_api_spec.rb +6 -6
- data/spec/api/custom_fields_api_spec.rb +3 -3
- data/spec/models/bulk_create_contacts200_response_spec.rb +60 -0
- data/spec/models/create_comment_automation200_response_automation_spec.rb +100 -0
- data/spec/models/create_comment_automation200_response_automation_stats_spec.rb +48 -0
- data/spec/models/create_comment_automation200_response_spec.rb +42 -0
- data/spec/models/create_contact200_response_channel_spec.rb +54 -0
- data/spec/models/create_contact200_response_contact_spec.rb +90 -0
- data/spec/models/create_contact200_response_spec.rb +54 -0
- data/spec/models/create_custom_field200_response_spec.rb +42 -0
- data/spec/models/get_comment_automation200_response_automation_spec.rb +124 -0
- data/spec/models/get_comment_automation200_response_logs_inner_spec.rb +82 -0
- data/spec/models/get_comment_automation200_response_spec.rb +48 -0
- data/spec/models/get_contact200_response_channels_inner_spec.rb +78 -0
- data/spec/models/get_contact200_response_contact_spec.rb +108 -0
- data/spec/models/get_contact200_response_spec.rb +48 -0
- data/spec/models/get_contact_channels200_response_channels_inner_spec.rb +84 -0
- data/spec/models/get_contact_channels200_response_spec.rb +42 -0
- data/spec/models/list_comment_automation_logs200_response_spec.rb +48 -0
- data/spec/models/list_contacts200_response_contacts_inner_spec.rb +138 -0
- data/spec/models/{get_broadcast200_response_broadcast_segment_filters_spec.rb → list_contacts200_response_filters_spec.rb} +6 -6
- data/spec/models/list_contacts200_response_spec.rb +54 -0
- data/spec/models/list_custom_fields200_response_fields_inner_spec.rb +70 -0
- data/spec/models/list_custom_fields200_response_spec.rb +42 -0
- data/spec/models/threads_platform_data_spec.rb +6 -0
- data/spec/models/update_comment_automation200_response_automation_spec.rb +82 -0
- data/spec/models/update_comment_automation200_response_spec.rb +42 -0
- data/spec/models/update_contact200_response_contact_spec.rb +90 -0
- data/spec/models/update_contact200_response_spec.rb +42 -0
- data/spec/models/update_custom_field200_response_field_spec.rb +60 -0
- data/spec/models/update_custom_field200_response_spec.rb +42 -0
- data/zernio-sdk-0.0.80.gem +0 -0
- metadata +115 -7
- 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':
|
|
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':
|
|
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':
|
|
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':
|
|
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':
|
|
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':
|
|
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':
|
|
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':
|
|
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':
|
|
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':
|
|
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':
|
|
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':
|
|
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':
|
|
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 [
|
|
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 [
|
|
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 [
|
|
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 [
|
|
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 [
|
|
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 [
|
|
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 [
|
|
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 [
|
|
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 [
|
|
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 [
|
|
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 [
|
|
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 [
|
|
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 [
|
|
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
|