Vote on Note

Vote on a community note to indicate whether it was helpful or not helpful. Votes help determine the visibility and credibility of notes.

Endpoint

POST /v1/vote

Submit a vote for a specific note.

Request Body

The request body should be a JSON object with the following properties:

{
  "note_id": "string",    // Required*: The internal ID of the note
  "content_id": "string", // Required*: The external ID of the content
  "vote": "helpful" | "not_helpful", // Required: Your vote
  "external_id": "string" // Optional: External user ID for the voter
}

* Either note_id or content_id must be provided, but not both

Note: If content_id is provided instead of note_id, the system will find the associated note automatically.

Response

Success Response (200 OK):

{
  "status": "accepted",
  "id": "vote_id"
}

Error Responses:

  • 400 Bad Request - Invalid input data

  • 401 Unauthorized - Invalid or missing API key

  • 404 Not Found - Note not found

  • 500 Internal Server Error - Server error while processing vote

Example

Vote using note ID:

curl -X POST https://communitynotes.dev/v1/vote \
  -H "Authorization: Bearer your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "note_id": "note_abc123",
    "vote": "helpful",
    "external_id": "voter_123"
  }'

Vote using content ID:

curl -X POST https://communitynotes.dev/v1/vote \
  -H "Authorization: Bearer your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "content_id": "post_123",
    "vote": "not_helpful",
    "external_id": "voter_123"
  }'

Success Response:

{
  "status": "accepted",
  "id": "vote_xyz789"
}

Notes

  • • Votes can be updated by submitting a new vote for the same note and external_id

  • • The same external_id cannot vote on the same note multiple times (last vote counts)

  • • Vote counts affect the note‘s visibility and credibility score

See Also