late-sdk 0.0.87 → 0.0.89

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5a74ec8f19eabd867da1ec4ba36db30c95a74d95235352fb672fe52107411b0d
4
- data.tar.gz: 5d3490ae45cfea0302aedf282068ce4e2355fa68a8824cc4b7b3fe1de06101d9
3
+ metadata.gz: 2a72535f922ba538988ba3f5d433e6f7d49b1d08ca9c6c822bbd3a501a21a607
4
+ data.tar.gz: 8bd4413027987bf598068ae5e56a9083b814c9ea51dc5f0abfa6ea50e72e3c44
5
5
  SHA512:
6
- metadata.gz: c7ef752a71ba3a970046eda7a309aa1262017223930439bcecf9351c83b85449d0cf7ae32985b15c286681843640bd2181d9ce05479c6f38fc6332c752c751fe
7
- data.tar.gz: 2162bd8cda82f4d38a6b2aea8d491639d920fa4255164448738edb94021fed6d0f47b4509e0c71fbab8504f26f26c0ac13c82f91fca2bb957c12835868b5821c
6
+ metadata.gz: 2a5efe6c5bd4262da2be7c4409acfc058bda3dc38d3e8eb0f5019c4bed651d5af4b1d74a47b6ae3c00455577b2a729095dbf1bda60e253e7ce1b5a9b5fcd03a2
7
+ data.tar.gz: 74554cee6f201b9e70ee8b1dc07ad0fee008b68a5d98cbca2c34830c8bfc13cf90891ba5d2b4cfafa2a8600493951e9502e4c072b6683d3327aed2454c2a7956
data/README.md CHANGED
@@ -186,12 +186,17 @@ Class | Method | HTTP request | Description
186
186
  *Late::LogsApi* | [**list_connection_logs**](docs/LogsApi.md#list_connection_logs) | **GET** /v1/connections/logs | List connection logs
187
187
  *Late::LogsApi* | [**list_posts_logs**](docs/LogsApi.md#list_posts_logs) | **GET** /v1/posts/logs | List publishing logs
188
188
  *Late::MediaApi* | [**get_media_presigned_url**](docs/MediaApi.md#get_media_presigned_url) | **POST** /v1/media/presign | Get presigned upload URL
189
+ *Late::MessagesApi* | [**add_message_reaction**](docs/MessagesApi.md#add_message_reaction) | **POST** /v1/inbox/conversations/{conversationId}/messages/{messageId}/reactions | Add reaction
190
+ *Late::MessagesApi* | [**delete_inbox_message**](docs/MessagesApi.md#delete_inbox_message) | **DELETE** /v1/inbox/conversations/{conversationId}/messages/{messageId} | Delete message
189
191
  *Late::MessagesApi* | [**edit_inbox_message**](docs/MessagesApi.md#edit_inbox_message) | **PATCH** /v1/inbox/conversations/{conversationId}/messages/{messageId} | Edit message
190
192
  *Late::MessagesApi* | [**get_inbox_conversation**](docs/MessagesApi.md#get_inbox_conversation) | **GET** /v1/inbox/conversations/{conversationId} | Get conversation
191
193
  *Late::MessagesApi* | [**get_inbox_conversation_messages**](docs/MessagesApi.md#get_inbox_conversation_messages) | **GET** /v1/inbox/conversations/{conversationId}/messages | List messages
192
194
  *Late::MessagesApi* | [**list_inbox_conversations**](docs/MessagesApi.md#list_inbox_conversations) | **GET** /v1/inbox/conversations | List conversations
195
+ *Late::MessagesApi* | [**remove_message_reaction**](docs/MessagesApi.md#remove_message_reaction) | **DELETE** /v1/inbox/conversations/{conversationId}/messages/{messageId}/reactions | Remove reaction
193
196
  *Late::MessagesApi* | [**send_inbox_message**](docs/MessagesApi.md#send_inbox_message) | **POST** /v1/inbox/conversations/{conversationId}/messages | Send message
197
+ *Late::MessagesApi* | [**send_typing_indicator**](docs/MessagesApi.md#send_typing_indicator) | **POST** /v1/inbox/conversations/{conversationId}/typing | Send typing indicator
194
198
  *Late::MessagesApi* | [**update_inbox_conversation**](docs/MessagesApi.md#update_inbox_conversation) | **PUT** /v1/inbox/conversations/{conversationId} | Update conversation status
199
+ *Late::MessagesApi* | [**upload_media_direct**](docs/MessagesApi.md#upload_media_direct) | **POST** /v1/media/upload-direct | Upload media file
195
200
  *Late::PostsApi* | [**bulk_upload_posts**](docs/PostsApi.md#bulk_upload_posts) | **POST** /v1/posts/bulk-upload | Bulk upload from CSV
196
201
  *Late::PostsApi* | [**create_post**](docs/PostsApi.md#create_post) | **POST** /v1/posts | Create post
197
202
  *Late::PostsApi* | [**delete_post**](docs/PostsApi.md#delete_post) | **DELETE** /v1/posts/{postId} | Delete post
@@ -313,6 +318,7 @@ Class | Method | HTTP request | Description
313
318
  - [Late::ActivateSequence200Response](docs/ActivateSequence200Response.md)
314
319
  - [Late::AddBroadcastRecipients200Response](docs/AddBroadcastRecipients200Response.md)
315
320
  - [Late::AddBroadcastRecipientsRequest](docs/AddBroadcastRecipientsRequest.md)
321
+ - [Late::AddMessageReactionRequest](docs/AddMessageReactionRequest.md)
316
322
  - [Late::AddWhatsAppBroadcastRecipients200Response](docs/AddWhatsAppBroadcastRecipients200Response.md)
317
323
  - [Late::AddWhatsAppBroadcastRecipientsRequest](docs/AddWhatsAppBroadcastRecipientsRequest.md)
318
324
  - [Late::AddWhatsAppBroadcastRecipientsRequestRecipientsInner](docs/AddWhatsAppBroadcastRecipientsRequestRecipientsInner.md)
@@ -825,6 +831,7 @@ Class | Method | HTTP request | Description
825
831
  - [Late::SendInboxMessageRequestTemplateElementsInnerButtonsInner](docs/SendInboxMessageRequestTemplateElementsInnerButtonsInner.md)
826
832
  - [Late::SendPrivateReplyToComment200Response](docs/SendPrivateReplyToComment200Response.md)
827
833
  - [Late::SendPrivateReplyToCommentRequest](docs/SendPrivateReplyToCommentRequest.md)
834
+ - [Late::SendTypingIndicatorRequest](docs/SendTypingIndicatorRequest.md)
828
835
  - [Late::SendWhatsAppBroadcast200Response](docs/SendWhatsAppBroadcast200Response.md)
829
836
  - [Late::SendWhatsAppBulk200Response](docs/SendWhatsAppBulk200Response.md)
830
837
  - [Late::SendWhatsAppBulk200ResponseResultsInner](docs/SendWhatsAppBulk200ResponseResultsInner.md)
@@ -921,6 +928,7 @@ Class | Method | HTTP request | Description
921
928
  - [Late::UpdateWhatsAppTemplate200Response](docs/UpdateWhatsAppTemplate200Response.md)
922
929
  - [Late::UpdateWhatsAppTemplate200ResponseTemplate](docs/UpdateWhatsAppTemplate200ResponseTemplate.md)
923
930
  - [Late::UpdateWhatsAppTemplateRequest](docs/UpdateWhatsAppTemplateRequest.md)
931
+ - [Late::UploadMediaDirect200Response](docs/UploadMediaDirect200Response.md)
924
932
  - [Late::UploadTokenResponse](docs/UploadTokenResponse.md)
925
933
  - [Late::UploadTokenStatusResponse](docs/UploadTokenStatusResponse.md)
926
934
  - [Late::UploadedFile](docs/UploadedFile.md)
@@ -0,0 +1,20 @@
1
+ # Late::AddMessageReactionRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **account_id** | **String** | Social account ID | |
8
+ | **emoji** | **String** | Emoji character (e.g. \"👍\", \"❤️\") | |
9
+
10
+ ## Example
11
+
12
+ ```ruby
13
+ require 'late-sdk'
14
+
15
+ instance = Late::AddMessageReactionRequest.new(
16
+ account_id: null,
17
+ emoji: 👍
18
+ )
19
+ ```
20
+
data/docs/MessagesApi.md CHANGED
@@ -4,12 +4,163 @@ All URIs are relative to *https://zernio.com/api*
4
4
 
5
5
  | Method | HTTP request | Description |
6
6
  | ------ | ------------ | ----------- |
7
+ | [**add_message_reaction**](MessagesApi.md#add_message_reaction) | **POST** /v1/inbox/conversations/{conversationId}/messages/{messageId}/reactions | Add reaction |
8
+ | [**delete_inbox_message**](MessagesApi.md#delete_inbox_message) | **DELETE** /v1/inbox/conversations/{conversationId}/messages/{messageId} | Delete message |
7
9
  | [**edit_inbox_message**](MessagesApi.md#edit_inbox_message) | **PATCH** /v1/inbox/conversations/{conversationId}/messages/{messageId} | Edit message |
8
10
  | [**get_inbox_conversation**](MessagesApi.md#get_inbox_conversation) | **GET** /v1/inbox/conversations/{conversationId} | Get conversation |
9
11
  | [**get_inbox_conversation_messages**](MessagesApi.md#get_inbox_conversation_messages) | **GET** /v1/inbox/conversations/{conversationId}/messages | List messages |
10
12
  | [**list_inbox_conversations**](MessagesApi.md#list_inbox_conversations) | **GET** /v1/inbox/conversations | List conversations |
13
+ | [**remove_message_reaction**](MessagesApi.md#remove_message_reaction) | **DELETE** /v1/inbox/conversations/{conversationId}/messages/{messageId}/reactions | Remove reaction |
11
14
  | [**send_inbox_message**](MessagesApi.md#send_inbox_message) | **POST** /v1/inbox/conversations/{conversationId}/messages | Send message |
15
+ | [**send_typing_indicator**](MessagesApi.md#send_typing_indicator) | **POST** /v1/inbox/conversations/{conversationId}/typing | Send typing indicator |
12
16
  | [**update_inbox_conversation**](MessagesApi.md#update_inbox_conversation) | **PUT** /v1/inbox/conversations/{conversationId} | Update conversation status |
17
+ | [**upload_media_direct**](MessagesApi.md#upload_media_direct) | **POST** /v1/media/upload-direct | Upload media file |
18
+
19
+
20
+ ## add_message_reaction
21
+
22
+ > <UpdateRedditSubreddits200Response> add_message_reaction(conversation_id, message_id, add_message_reaction_request)
23
+
24
+ Add reaction
25
+
26
+ Add an emoji reaction to a message. Platform support: - **Telegram**: Supports a subset of Unicode emoji reactions - **WhatsApp**: Supports any standard emoji (one reaction per message per sender) - **All others**: Returns 400 (not supported)
27
+
28
+ ### Examples
29
+
30
+ ```ruby
31
+ require 'time'
32
+ require 'late-sdk'
33
+ # setup authorization
34
+ Late.configure do |config|
35
+ # Configure Bearer authorization (JWT): bearerAuth
36
+ config.access_token = 'YOUR_BEARER_TOKEN'
37
+ end
38
+
39
+ api_instance = Late::MessagesApi.new
40
+ conversation_id = 'conversation_id_example' # String | The conversation ID
41
+ message_id = 'message_id_example' # String | The platform message ID to react to
42
+ add_message_reaction_request = Late::AddMessageReactionRequest.new({account_id: 'account_id_example', emoji: '👍'}) # AddMessageReactionRequest |
43
+
44
+ begin
45
+ # Add reaction
46
+ result = api_instance.add_message_reaction(conversation_id, message_id, add_message_reaction_request)
47
+ p result
48
+ rescue Late::ApiError => e
49
+ puts "Error when calling MessagesApi->add_message_reaction: #{e}"
50
+ end
51
+ ```
52
+
53
+ #### Using the add_message_reaction_with_http_info variant
54
+
55
+ This returns an Array which contains the response data, status code and headers.
56
+
57
+ > <Array(<UpdateRedditSubreddits200Response>, Integer, Hash)> add_message_reaction_with_http_info(conversation_id, message_id, add_message_reaction_request)
58
+
59
+ ```ruby
60
+ begin
61
+ # Add reaction
62
+ data, status_code, headers = api_instance.add_message_reaction_with_http_info(conversation_id, message_id, add_message_reaction_request)
63
+ p status_code # => 2xx
64
+ p headers # => { ... }
65
+ p data # => <UpdateRedditSubreddits200Response>
66
+ rescue Late::ApiError => e
67
+ puts "Error when calling MessagesApi->add_message_reaction_with_http_info: #{e}"
68
+ end
69
+ ```
70
+
71
+ ### Parameters
72
+
73
+ | Name | Type | Description | Notes |
74
+ | ---- | ---- | ----------- | ----- |
75
+ | **conversation_id** | **String** | The conversation ID | |
76
+ | **message_id** | **String** | The platform message ID to react to | |
77
+ | **add_message_reaction_request** | [**AddMessageReactionRequest**](AddMessageReactionRequest.md) | | |
78
+
79
+ ### Return type
80
+
81
+ [**UpdateRedditSubreddits200Response**](UpdateRedditSubreddits200Response.md)
82
+
83
+ ### Authorization
84
+
85
+ [bearerAuth](../README.md#bearerAuth)
86
+
87
+ ### HTTP request headers
88
+
89
+ - **Content-Type**: application/json
90
+ - **Accept**: application/json
91
+
92
+
93
+ ## delete_inbox_message
94
+
95
+ > <UpdateRedditSubreddits200Response> delete_inbox_message(conversation_id, message_id, account_id)
96
+
97
+ Delete message
98
+
99
+ Delete a message from a conversation. Platform support varies: - **Telegram**: Full delete (bot's own messages anytime, others if admin) - **X/Twitter**: Full delete (own DM events only) - **Bluesky**: Delete for self only (recipient still sees it) - **Reddit**: Delete from sender's view only - **Facebook, Instagram, WhatsApp**: Not supported (returns 400)
100
+
101
+ ### Examples
102
+
103
+ ```ruby
104
+ require 'time'
105
+ require 'late-sdk'
106
+ # setup authorization
107
+ Late.configure do |config|
108
+ # Configure Bearer authorization (JWT): bearerAuth
109
+ config.access_token = 'YOUR_BEARER_TOKEN'
110
+ end
111
+
112
+ api_instance = Late::MessagesApi.new
113
+ conversation_id = 'conversation_id_example' # String | The conversation ID
114
+ message_id = 'message_id_example' # String | The platform message ID to delete
115
+ account_id = 'account_id_example' # String | Social account ID
116
+
117
+ begin
118
+ # Delete message
119
+ result = api_instance.delete_inbox_message(conversation_id, message_id, account_id)
120
+ p result
121
+ rescue Late::ApiError => e
122
+ puts "Error when calling MessagesApi->delete_inbox_message: #{e}"
123
+ end
124
+ ```
125
+
126
+ #### Using the delete_inbox_message_with_http_info variant
127
+
128
+ This returns an Array which contains the response data, status code and headers.
129
+
130
+ > <Array(<UpdateRedditSubreddits200Response>, Integer, Hash)> delete_inbox_message_with_http_info(conversation_id, message_id, account_id)
131
+
132
+ ```ruby
133
+ begin
134
+ # Delete message
135
+ data, status_code, headers = api_instance.delete_inbox_message_with_http_info(conversation_id, message_id, account_id)
136
+ p status_code # => 2xx
137
+ p headers # => { ... }
138
+ p data # => <UpdateRedditSubreddits200Response>
139
+ rescue Late::ApiError => e
140
+ puts "Error when calling MessagesApi->delete_inbox_message_with_http_info: #{e}"
141
+ end
142
+ ```
143
+
144
+ ### Parameters
145
+
146
+ | Name | Type | Description | Notes |
147
+ | ---- | ---- | ----------- | ----- |
148
+ | **conversation_id** | **String** | The conversation ID | |
149
+ | **message_id** | **String** | The platform message ID to delete | |
150
+ | **account_id** | **String** | Social account ID | |
151
+
152
+ ### Return type
153
+
154
+ [**UpdateRedditSubreddits200Response**](UpdateRedditSubreddits200Response.md)
155
+
156
+ ### Authorization
157
+
158
+ [bearerAuth](../README.md#bearerAuth)
159
+
160
+ ### HTTP request headers
161
+
162
+ - **Content-Type**: Not defined
163
+ - **Accept**: application/json
13
164
 
14
165
 
15
166
  ## edit_inbox_message
@@ -162,7 +313,7 @@ end
162
313
 
163
314
  List messages
164
315
 
165
- Fetch messages for a specific conversation. Requires accountId query parameter.
316
+ Fetch messages for a specific conversation. Requires accountId query parameter. **Twitter/X limitation:** X's encrypted \"X Chat\" messages are not accessible via the API. Conversations where the other participant uses encrypted X Chat may only show your outgoing messages. See the [list conversations endpoint](#/Messages/listInboxConversations) for more details.
166
317
 
167
318
  ### Examples
168
319
 
@@ -233,7 +384,7 @@ end
233
384
 
234
385
  List conversations
235
386
 
236
- Fetch conversations (DMs) from all connected messaging accounts in a single API call. Supports filtering by profile and platform. Results are aggregated and deduplicated. Supported platforms: Facebook, Instagram, Twitter/X, Bluesky, Reddit, Telegram.
387
+ Fetch conversations (DMs) from all connected messaging accounts in a single API call. Supports filtering by profile and platform. Results are aggregated and deduplicated. Supported platforms: Facebook, Instagram, Twitter/X, Bluesky, Reddit, Telegram. **Twitter/X limitation:** X has replaced traditional DMs with encrypted \"X Chat\" for many accounts. Messages sent or received through encrypted X Chat are not accessible via X's API (the `/2/dm_events` endpoint only returns legacy unencrypted DMs). This means some Twitter/X conversations may show only outgoing messages or appear empty. This is an X platform limitation that affects all third-party applications. See [X's docs on encrypted messaging](https://help.x.com/en/using-x/about-chat) for more details.
237
388
 
238
389
  ### Examples
239
390
 
@@ -310,6 +461,79 @@ end
310
461
  - **Accept**: application/json
311
462
 
312
463
 
464
+ ## remove_message_reaction
465
+
466
+ > <UpdateRedditSubreddits200Response> remove_message_reaction(conversation_id, message_id, account_id)
467
+
468
+ Remove reaction
469
+
470
+ Remove a reaction from a message. Platform support: - **Telegram**: Send empty reaction array to clear - **WhatsApp**: Send empty emoji to remove - **All others**: Returns 400 (not supported)
471
+
472
+ ### Examples
473
+
474
+ ```ruby
475
+ require 'time'
476
+ require 'late-sdk'
477
+ # setup authorization
478
+ Late.configure do |config|
479
+ # Configure Bearer authorization (JWT): bearerAuth
480
+ config.access_token = 'YOUR_BEARER_TOKEN'
481
+ end
482
+
483
+ api_instance = Late::MessagesApi.new
484
+ conversation_id = 'conversation_id_example' # String | The conversation ID
485
+ message_id = 'message_id_example' # String | The platform message ID
486
+ account_id = 'account_id_example' # String | Social account ID
487
+
488
+ begin
489
+ # Remove reaction
490
+ result = api_instance.remove_message_reaction(conversation_id, message_id, account_id)
491
+ p result
492
+ rescue Late::ApiError => e
493
+ puts "Error when calling MessagesApi->remove_message_reaction: #{e}"
494
+ end
495
+ ```
496
+
497
+ #### Using the remove_message_reaction_with_http_info variant
498
+
499
+ This returns an Array which contains the response data, status code and headers.
500
+
501
+ > <Array(<UpdateRedditSubreddits200Response>, Integer, Hash)> remove_message_reaction_with_http_info(conversation_id, message_id, account_id)
502
+
503
+ ```ruby
504
+ begin
505
+ # Remove reaction
506
+ data, status_code, headers = api_instance.remove_message_reaction_with_http_info(conversation_id, message_id, account_id)
507
+ p status_code # => 2xx
508
+ p headers # => { ... }
509
+ p data # => <UpdateRedditSubreddits200Response>
510
+ rescue Late::ApiError => e
511
+ puts "Error when calling MessagesApi->remove_message_reaction_with_http_info: #{e}"
512
+ end
513
+ ```
514
+
515
+ ### Parameters
516
+
517
+ | Name | Type | Description | Notes |
518
+ | ---- | ---- | ----------- | ----- |
519
+ | **conversation_id** | **String** | The conversation ID | |
520
+ | **message_id** | **String** | The platform message ID | |
521
+ | **account_id** | **String** | Social account ID | |
522
+
523
+ ### Return type
524
+
525
+ [**UpdateRedditSubreddits200Response**](UpdateRedditSubreddits200Response.md)
526
+
527
+ ### Authorization
528
+
529
+ [bearerAuth](../README.md#bearerAuth)
530
+
531
+ ### HTTP request headers
532
+
533
+ - **Content-Type**: Not defined
534
+ - **Accept**: application/json
535
+
536
+
313
537
  ## send_inbox_message
314
538
 
315
539
  > <SendInboxMessage200Response> send_inbox_message(conversation_id, send_inbox_message_request)
@@ -381,6 +605,77 @@ end
381
605
  - **Accept**: application/json
382
606
 
383
607
 
608
+ ## send_typing_indicator
609
+
610
+ > <UpdateRedditSubreddits200Response> send_typing_indicator(conversation_id, send_typing_indicator_request)
611
+
612
+ Send typing indicator
613
+
614
+ Show a typing indicator in a conversation. Platform support: - **Facebook Messenger**: Shows \"Page is typing...\" for 20 seconds - **Telegram**: Shows \"Bot is typing...\" for 5 seconds - **All others**: Returns 200 but no-op (platform doesn't support it) Typing indicators are best-effort. The endpoint always returns 200 even if the platform call fails.
615
+
616
+ ### Examples
617
+
618
+ ```ruby
619
+ require 'time'
620
+ require 'late-sdk'
621
+ # setup authorization
622
+ Late.configure do |config|
623
+ # Configure Bearer authorization (JWT): bearerAuth
624
+ config.access_token = 'YOUR_BEARER_TOKEN'
625
+ end
626
+
627
+ api_instance = Late::MessagesApi.new
628
+ conversation_id = 'conversation_id_example' # String | The conversation ID
629
+ send_typing_indicator_request = Late::SendTypingIndicatorRequest.new({account_id: 'account_id_example'}) # SendTypingIndicatorRequest |
630
+
631
+ begin
632
+ # Send typing indicator
633
+ result = api_instance.send_typing_indicator(conversation_id, send_typing_indicator_request)
634
+ p result
635
+ rescue Late::ApiError => e
636
+ puts "Error when calling MessagesApi->send_typing_indicator: #{e}"
637
+ end
638
+ ```
639
+
640
+ #### Using the send_typing_indicator_with_http_info variant
641
+
642
+ This returns an Array which contains the response data, status code and headers.
643
+
644
+ > <Array(<UpdateRedditSubreddits200Response>, Integer, Hash)> send_typing_indicator_with_http_info(conversation_id, send_typing_indicator_request)
645
+
646
+ ```ruby
647
+ begin
648
+ # Send typing indicator
649
+ data, status_code, headers = api_instance.send_typing_indicator_with_http_info(conversation_id, send_typing_indicator_request)
650
+ p status_code # => 2xx
651
+ p headers # => { ... }
652
+ p data # => <UpdateRedditSubreddits200Response>
653
+ rescue Late::ApiError => e
654
+ puts "Error when calling MessagesApi->send_typing_indicator_with_http_info: #{e}"
655
+ end
656
+ ```
657
+
658
+ ### Parameters
659
+
660
+ | Name | Type | Description | Notes |
661
+ | ---- | ---- | ----------- | ----- |
662
+ | **conversation_id** | **String** | The conversation ID | |
663
+ | **send_typing_indicator_request** | [**SendTypingIndicatorRequest**](SendTypingIndicatorRequest.md) | | |
664
+
665
+ ### Return type
666
+
667
+ [**UpdateRedditSubreddits200Response**](UpdateRedditSubreddits200Response.md)
668
+
669
+ ### Authorization
670
+
671
+ [bearerAuth](../README.md#bearerAuth)
672
+
673
+ ### HTTP request headers
674
+
675
+ - **Content-Type**: application/json
676
+ - **Accept**: application/json
677
+
678
+
384
679
  ## update_inbox_conversation
385
680
 
386
681
  > <UpdateInboxConversation200Response> update_inbox_conversation(conversation_id, update_inbox_conversation_request)
@@ -451,3 +746,76 @@ end
451
746
  - **Content-Type**: application/json
452
747
  - **Accept**: application/json
453
748
 
749
+
750
+ ## upload_media_direct
751
+
752
+ > <UploadMediaDirect200Response> upload_media_direct(file, opts)
753
+
754
+ Upload media file
755
+
756
+ Upload a media file using API key authentication and get back a publicly accessible URL. The URL can be used as `attachmentUrl` when sending inbox messages. Files are stored in temporary storage and auto-delete after 7 days. Maximum file size is 25MB. Unlike `/v1/media/upload` (which uses upload tokens for end-user flows), this endpoint uses standard Bearer token authentication for programmatic use.
757
+
758
+ ### Examples
759
+
760
+ ```ruby
761
+ require 'time'
762
+ require 'late-sdk'
763
+ # setup authorization
764
+ Late.configure do |config|
765
+ # Configure Bearer authorization (JWT): bearerAuth
766
+ config.access_token = 'YOUR_BEARER_TOKEN'
767
+ end
768
+
769
+ api_instance = Late::MessagesApi.new
770
+ file = File.new('/path/to/some/file') # File | The file to upload (max 25MB)
771
+ opts = {
772
+ content_type: 'content_type_example' # String | Override MIME type (e.g. \\\"image/jpeg\\\"). Auto-detected from file if not provided.
773
+ }
774
+
775
+ begin
776
+ # Upload media file
777
+ result = api_instance.upload_media_direct(file, opts)
778
+ p result
779
+ rescue Late::ApiError => e
780
+ puts "Error when calling MessagesApi->upload_media_direct: #{e}"
781
+ end
782
+ ```
783
+
784
+ #### Using the upload_media_direct_with_http_info variant
785
+
786
+ This returns an Array which contains the response data, status code and headers.
787
+
788
+ > <Array(<UploadMediaDirect200Response>, Integer, Hash)> upload_media_direct_with_http_info(file, opts)
789
+
790
+ ```ruby
791
+ begin
792
+ # Upload media file
793
+ data, status_code, headers = api_instance.upload_media_direct_with_http_info(file, opts)
794
+ p status_code # => 2xx
795
+ p headers # => { ... }
796
+ p data # => <UploadMediaDirect200Response>
797
+ rescue Late::ApiError => e
798
+ puts "Error when calling MessagesApi->upload_media_direct_with_http_info: #{e}"
799
+ end
800
+ ```
801
+
802
+ ### Parameters
803
+
804
+ | Name | Type | Description | Notes |
805
+ | ---- | ---- | ----------- | ----- |
806
+ | **file** | **File** | The file to upload (max 25MB) | |
807
+ | **content_type** | **String** | Override MIME type (e.g. \\\&quot;image/jpeg\\\&quot;). Auto-detected from file if not provided. | [optional] |
808
+
809
+ ### Return type
810
+
811
+ [**UploadMediaDirect200Response**](UploadMediaDirect200Response.md)
812
+
813
+ ### Authorization
814
+
815
+ [bearerAuth](../README.md#bearerAuth)
816
+
817
+ ### HTTP request headers
818
+
819
+ - **Content-Type**: multipart/form-data
820
+ - **Accept**: application/json
821
+
@@ -0,0 +1,18 @@
1
+ # Late::SendTypingIndicatorRequest
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **account_id** | **String** | Social account ID | |
8
+
9
+ ## Example
10
+
11
+ ```ruby
12
+ require 'late-sdk'
13
+
14
+ instance = Late::SendTypingIndicatorRequest.new(
15
+ account_id: null
16
+ )
17
+ ```
18
+
@@ -0,0 +1,24 @@
1
+ # Late::UploadMediaDirect200Response
2
+
3
+ ## Properties
4
+
5
+ | Name | Type | Description | Notes |
6
+ | ---- | ---- | ----------- | ----- |
7
+ | **url** | **String** | Publicly accessible URL for the uploaded file | [optional] |
8
+ | **filename** | **String** | Generated unique filename | [optional] |
9
+ | **content_type** | **String** | MIME type of the file | [optional] |
10
+ | **size** | **Integer** | File size in bytes | [optional] |
11
+
12
+ ## Example
13
+
14
+ ```ruby
15
+ require 'late-sdk'
16
+
17
+ instance = Late::UploadMediaDirect200Response.new(
18
+ url: null,
19
+ filename: null,
20
+ content_type: null,
21
+ size: null
22
+ )
23
+ ```
24
+