POST /2/media/upload. Le téléversement de médias avec OAuth peut être un peu délicat, c’est pourquoi nous avons rassemblé ci-dessous certains éléments à garder à l’esprit, ainsi qu’un exemple fonctionnel d’utilisation de cet endpoint.
À garder à l’esprit
- Vous pouvez joindre jusqu’à 4 photos, 1 GIF animé ou 1 vidéo dans une Publication.
- L’image transmise doit être le binaire brut de l’image ou un binaire encodé en base64 ; il n’est pas nécessaire d’encoder ou d’échapper le contenu autrement tant que le Content-Type est correctement défini (en cas de doute :
application/octet-stream). - Lorsque vous publiez des images encodées en base64, veillez à définir « Content-Transfer-Encoding: base64 » pour la partie image du message.
- Les délimitations de message multipart (boundaries) doivent se trouver sur leur propre ligne et être terminées par un CRLF.
- Pour des exemples concrets d’utilisation de POST avec ce point de terminaison, nous vous recommandons de faire des tests avec xurl. Consultez également les bibliothèques X disponibles.
- Utilisez le
media_id_stringfourni dans la réponse de l’API pour JavaScript et tout autre langage qui ne peut pas représenter correctement un entier long.
Catégories de médias
tweet_image, tweet_video ou tweet_gif), en fonction du type de contenu.
Les catégories de médias les plus courantes sont les suivantes :
tweet_imagetweet_videotweet_gifdm_imagedm_videodm_gifsubtitles
Spécifications et recommandations pour les images
- Types de médias image pris en charge :
JPG,PNG,GIF,WEBP - Taille de l’image :
<= 5 MB - Taille du GIF animé :
<= 15 MB
media_id. La limite de taille de fichier et d’autres contraintes peuvent varier en fonction du paramètre media_category.
Recommandations pour les GIF animés
- Résolution :
<= 1280x1080(widthxheight) - Nombre d’images :
<= 350 - Nombre de pixels :
<= 300 millions(width*height*num_frames) - Taille de fichier :
<= 15Mb
media_category. Cela permet au serveur de traiter le fichier GIF de manière asynchrone, ce qui est nécessaire pour traiter des fichiers plus volumineux. Indiquez media_category=tweet_gif pour activer le comportement de téléversement asynchrone pour les Publications contenant un GIF animé.
Spécifications et recommandations pour la vidéo
Recommandé
- Codec vidéo :
H264 High Profile - Fréquences d’images :
30 FPS,60 FPS - Résolution vidéo :
1280x720(paysage),720x1280(portrait),720x720(carré). Les utilisateurs abonnés peuvent téléverser une vidéo en 1080p et obtenir une lecture en 1080p. Les utilisateurs non abonnés peuvent téléverser une vidéo en 720p et obtenir une lecture en 720p. - Débit vidéo minimal :
5,000 kbps - Débit audio minimal :
128 kbps - Codec audio :
AAC LC - Format d’image :
16:9(paysage ou portrait),1:1(carré)
Avancé
- Fréquence d’image : doit être de
60 FPSou moins - Dimensions : doivent être comprises entre
32x32et1280x1024 - Taille du fichier : ne doit pas dépasser
512 MB - Durée : doit être comprise entre
0,5 secondeet140 secondes - Ratio d’aspect : doit être compris entre
1:3et3:1 - Ratio d’aspect des pixels : doit être de
1:1 - Format de pixels : seul le format YUV 4:2:0 est pris en charge
- L’audio doit être au format
AACavec profil Low Complexity. (AACHigh-Efficiency n’est pas pris en charge) - L’audio doit être en
monooustéréo, pas en 5.1 ou plus - Ne doit pas contenir de
open GOP - Doit utiliser un
progressive scan
Informations supplémentaires
| Orientation | Largeur | Hauteur | Débit vidéo | Débit audio |
|---|---|---|---|---|
| Paysage | 1280 | 720 | 2048K | 128K |
| Paysage | 640 | 360 | 768K | 64K |
| Paysage | 320 | 180 | 256K | 64K |
| Portrait | 720 | 1280 | 2048K | 128K |
| Portrait | 360 | 640 | 768K | 64K |
| Portrait | 180 | 320 | 256K | 64K |
| Carré | 720 | 720 | 2048K | 128K |
| Carré | 480 | 480 | 768K | 64K |
| Carré | 240 | 240 | 256K | 32K |