Skip to content

Commit d612588

Browse files
authored
Merge pull request #179 from MerleLiuKun/feat-media-upload-change
feat(media): ✨ update api for media upload v2
2 parents 8d4cca7 + 6b37602 commit d612588

File tree

2 files changed

+9
-18
lines changed

2 files changed

+9
-18
lines changed

pytwitter/api.py

Lines changed: 5 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -855,7 +855,6 @@ def upload_media_chunked_init_v2(
855855
"""
856856

857857
args = {
858-
"command": "INIT",
859858
"total_bytes": total_bytes,
860859
"media_type": media_type,
861860
}
@@ -867,9 +866,9 @@ def upload_media_chunked_init_v2(
867866
)
868867

869868
resp = self._request(
870-
url=f"{self.BASE_URL_V2}/media/upload",
869+
url=f"{self.BASE_URL_V2}/media/upload/initialize",
871870
verb="POST",
872-
data=args,
871+
json=args,
873872
)
874873
data = self._parse_response(resp=resp)
875874
if return_json:
@@ -893,13 +892,9 @@ def upload_media_chunked_append_v2(
893892
:return: True if upload success.
894893
"""
895894
resp = self._request(
896-
url=f"{self.BASE_URL_V2}/media/upload",
895+
url=f"{self.BASE_URL_V2}/media/upload/{media_id}/append",
897896
verb="POST",
898-
params={
899-
"command": "APPEND",
900-
"media_id": media_id,
901-
},
902-
data={"segment_index": segment_index},
897+
json={"segment_index": segment_index},
903898
files={"media": media},
904899
)
905900
if resp.ok:
@@ -921,12 +916,8 @@ def upload_media_chunked_finalize_v2(
921916
:return: Media upload response.
922917
"""
923918
resp = self._request(
924-
url=f"{self.BASE_URL_V2}/media/upload",
919+
url=f"{self.BASE_URL_V2}/media/upload/{media_id}/finalize",
925920
verb="POST",
926-
params={
927-
"command": "FINALIZE",
928-
"media_id": media_id,
929-
},
930921
)
931922
data = self._parse_response(resp=resp)
932923
if return_json:

tests/apis/test_media_upload_v2.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ def test_media_upload_simple_v2(api_with_user, helpers):
4040
def test_upload_media_chunked_init_v2(api_with_user, helpers):
4141
responses.add(
4242
responses.POST,
43-
url="https://api.twitter.com/2/media/upload",
43+
url="https://api.twitter.com/2/media/upload/initialize",
4444
json=helpers.load_json_data(
4545
"testdata/apis/media_upload_v2/upload_chunk_init_resp.json"
4646
),
@@ -68,7 +68,7 @@ def test_upload_media_chunked_append_v2(api_with_user, helpers):
6868

6969
responses.add(
7070
responses.POST,
71-
url="https://api.twitter.com/2/media/upload",
71+
url=f"https://api.twitter.com/2/media/upload/{media_id}/append",
7272
)
7373

7474
with open("testdata/apis/media_upload/x-logo.png", "rb") as media:
@@ -88,7 +88,7 @@ def test_upload_media_chunked_append_v2(api_with_user, helpers):
8888

8989
responses.add(
9090
responses.POST,
91-
url="https://api.twitter.com/2/media/upload",
91+
url=f"https://api.twitter.com/2/media/upload/{media_id}/append",
9292
status=401,
9393
json={"errors": [{"code": 32, "message": "Could not authenticate you."}]},
9494
)
@@ -106,7 +106,7 @@ def test_upload_media_chunked_finalize_v2(api_with_user, helpers):
106106

107107
responses.add(
108108
responses.POST,
109-
url="https://api.twitter.com/2/media/upload",
109+
url=f"https://api.twitter.com/2/media/upload/{media_id}/finalize",
110110
json=helpers.load_json_data(
111111
"testdata/apis/media_upload_v2/upload_chunk_finalize_resp.json"
112112
),

0 commit comments

Comments
 (0)