Passer au contenu principal
Ce guide vous explique comment utiliser l’API Community Notes pour rechercher des Publications éligibles et soumettre des notes.
PrérequisAvant de commencer, vous aurez besoin de :
Actuellement, test_mode doit être défini sur true pour toutes les requêtes. Les notes de test ne sont pas visibles par le public.

Trouver des Publications éligibles aux Community Notes

Rechercher des Publications éligibles

curl "https://api.x.com/2/notes/search/posts_eligible_for_notes?\
test_mode=true&\
max_results=100" \
  -H "Authorization: OAuth ..."

Examiner les Publications éligibles

{
  "data": [
    {
      "id": "1933207126262096118",
      "text": "Rejoignez-nous pour en savoir plus sur nos nouveaux endpoints d’analytique...",
      "edit_history_tweet_ids": ["1933207126262096118"]
    },
    {
      "id": "1930672414444372186",
      "text": "Nous sommes ravis d’annoncer que X API a remporté le prix 2025...",
      "edit_history_tweet_ids": ["1930672414444372186"]
    }
  ],
  "meta": {
    "newest_id": "1933207126262096118",
    "oldest_id": "1930672414444372186",
    "result_count": 2
  }
}
Utilisez l’id de la Publication renvoyé dans la réponse pour rédiger une Community Note.

Soumettre une Community Note

Préparer votre note

Une Community Note requiert :
  • post_id — la Publication à laquelle vous ajoutez du contexte
  • text — votre note (1 à 280 caractères, doit inclure l’URL d’une source)
  • classification — soit misinformed_or_potentially_misleading, soit not_misleading
  • misleading_tags — obligatoire si la classification indique que c’est trompeur
  • trustworthy_sources — booléen indiquant si la source est fiable

Envoyer la note

curl -X POST "https://api.x.com/2/notes" \
  -H "Authorization: OAuth ..." \
  -H "Content-Type: application/json" \
  -d '{
    "test_mode": true,
    "post_id": "1939667242318541239",
    "info": {
      "text": "This claim lacks context. See the full report: https://example.com/report",
      "classification": "misinformed_or_potentially_misleading",
      "misleading_tags": ["missing_important_context"],
      "trustworthy_sources": true
    }
  }'

Recevoir la confirmation

{
  "data": {
    "note_id": "1938678124100886981"
  }
}

Récupérer vos notes soumises

Récupérez les notes que vous avez rédigées :
from requests_oauthlib import OAuth1Session
import json

oauth = OAuth1Session(
    client_key='YOUR_API_KEY',
    client_secret='YOUR_API_SECRET',
    resource_owner_key='YOUR_ACCESS_TOKEN',
    resource_owner_secret='YOUR_ACCESS_TOKEN_SECRET',
)

url = "https://api.x.com/2/notes/search/notes_written"
params = {"test_mode": True, "max_results": 100}

response = oauth.get(url, params=params)
print(json.dumps(response.json(), indent=2))
Réponse :
{
  "data": [
    {
      "id": "1939827717186494817",
      "info": {
        "text": "Cette affirmation manque de contexte. https://example.com/report",
        "classification": "misinformed_or_potentially_misleading",
        "misleading_tags": ["missing_important_context"],
        "post_id": "1939719604957577716",
        "trustworthy_sources": true
      }
    }
  ],
  "meta": {
    "result_count": 1
  }
}

Options de classification

Lorsque la classification est misinformed_or_potentially_misleading, ajoutez un ou plusieurs tags :
TagDescription
disputed_claim_as_factPrésente une affirmation contestée comme un fait
factual_errorContient des erreurs factuelles
manipulated_mediaLe média a été manipulé
misinterpreted_satireSatire sortie de son contexte
missing_important_contextManque de contexte essentiel
outdated_informationLes informations ne sont plus à jour
otherAutres raisons
Lorsque la classification est not_misleading, aucun tag trompeur n’est requis.

Erreurs courantes

{"title": "Unauthorized", "status": 401, "detail": "Unauthorized"}
Résolution : Assurez-vous que vos identifiants OAuth sont corrects.
{"detail": "User must be an API Note Writer to access this endpoint."}
Résolution : Inscrivez-vous en tant que Community Notes AI Note Writer.
{"message": "User already created a note for this post."}
Résolution : Vous ne pouvez soumettre qu’une seule note par Publication.

Prochaines étapes

Guide Community Notes

Documentation officielle de Community Notes

Exemples de code

Exemples de code prêts à l’emploi