@@ -196,9 +196,16 @@ def preview(klass, account, **kwargs):
196
196
"""
197
197
Returns an HTML preview of a tweet, either new or existing.
198
198
"""
199
- resource = klass .TWEET_ID_PREVIEW if kwargs .get ('id' ) else klass .TWEET_PREVIEW
200
- resource = resource .format (account_id = account .id , id = kwargs .get ('id' ))
201
- response = Request (account .client , 'get' , resource , params = kwargs ).perform ()
199
+ params = {}
200
+ params .update (kwargs )
201
+
202
+ # handles array to string conversion for media IDs
203
+ if 'media_ids' in params and isinstance (params ['media_ids' ], list ):
204
+ params ['media_ids' ] = ',' .join (map (params ['media_ids' ]))
205
+
206
+ resource = klass .TWEET_ID_PREVIEW if params .get ('id' ) else klass .TWEET_PREVIEW
207
+ resource = resource .format (account_id = account .id , id = params .get ('id' ))
208
+ response = Request (account .client , 'get' , resource , params = params ).perform ()
202
209
return response .body ['data' ]
203
210
204
211
@classmethod
@@ -208,6 +215,11 @@ def create(klass, account, status, **kwargs):
208
215
"""
209
216
params = {'status' : status }
210
217
params .update (kwargs )
218
+
219
+ # handles array to string conversion for media IDs
220
+ if 'media_ids' in params and isinstance (params ['media_ids' ], list ):
221
+ params ['media_ids' ] = ',' .join (map (params ['media_ids' ]))
222
+
211
223
resource = klass .TWEET_CREATE .format (account_id = account .id )
212
224
response = Request (account .client , 'post' , resource , params = params ).perform ()
213
225
return response .body ['data' ]
0 commit comments