Passer au contenu principal
Ce guide vous explique comment envoyer des Messages privés et créer des conversations de groupe.
PrérequisAvant de commencer, vous aurez besoin :
  • D’un compte développeur avec une App approuvée
  • D’un jeton d’accès utilisateur (OAuth 2.0 PKCE, avec les scopes dm.write et dm.read)

Envoyer un message individuel

1

Obtenir l'identifiant utilisateur du destinataire

Vous avez besoin de l’identifiant utilisateur de la personne à qui vous souhaitez envoyer un message. Vous pouvez le récupérer à partir de l’endpoint de recherche d’utilisateurs.
2

Envoyer le message

cURL
curl -X POST "https://api.x.com/2/dm_conversations/with/9876543210/messages" \
  -H "Authorization: Bearer $USER_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"text": "Hello! This is a message from the API."}'
3

Consulter la réponse

{
  "data": {
    "dm_conversation_id": "1234567890-9876543210",
    "dm_event_id": "1582103724607971332"
  }
}

Créer une conversation de groupe

1

Définir les participants

Rassemblez les identifiants des utilisateurs que vous souhaitez inclure dans le groupe (en dehors de vous-même).
2

Créer le groupe avec le premier message

cURL
curl -X POST "https://api.x.com/2/dm_conversations" \
  -H "Authorization: Bearer $USER_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "conversation_type": "Group",
    "participant_ids": ["944480690", "906948460078698496"],
    "message": {"text": "Welcome to our new group!"}
  }'
3

Récupérer l’id de la conversation

{
  "data": {
    "dm_conversation_id": "1582103724607971328",
    "dm_event_id": "1582103724607971332"
  }
}
Enregistrez le dm_conversation_id pour ajouter d’autres messages ultérieurement.

Ajouter un message à une conversation existante

Envoyez un message dans une conversation à laquelle vous participez déjà :
cURL
curl -X POST "https://api.x.com/2/dm_conversations/1582103724607971328/messages" \
  -H "Authorization: Bearer $USER_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"text": "Ajout d’un autre message dans la conversation."}'

Envoyer un message avec un média

1

Téléverser le média

Tout d’abord, téléversez votre média à l’aide de l’endpoint Media Upload.
2

Envoyer avec une pièce jointe multimédia

cURL
curl -X POST "https://api.x.com/2/dm_conversations/with/9876543210/messages" \
  -H "Authorization: Bearer $USER_ACCESS_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "text": "Découvrez cette image !",
    "attachments": [{"media_id": "1234567890123456789"}]
  }'

Supprimer un message

Supprimez un message que vous avez envoyé :
cURL
curl -X DELETE "https://api.x.com/2/dm_events/1582103724607971332" \
  -H "Authorization: Bearer $USER_ACCESS_TOKEN"
Réponse :
{
  "data": {
    "deleted": true
  }
}
Vous ne pouvez supprimer que les messages que vous avez envoyés, pas ceux des autres participants.

Scopes requis

Lorsque vous utilisez OAuth 2.0 PKCE, votre jeton d’accès doit inclure les scopes suivants :
ScopeDescription
dm.writeEnvoyer et supprimer des messages
dm.readLire les conversations (requis avec dm.write)
tweet.readRequis pour certaines Expansions
users.readRequis pour les Expansions d’utilisateurs

Prochaines étapes

Recherche de DM

Récupérer les conversations de DM

Guide d’intégration

Concepts clés et bonnes pratiques

Référence de l’API

Documentation complète de l’endpoint

Exemples de code

Exemples de code prêts à l’emploi