# Remove a voter from a post Removes a voter (upvote) from a post. ### Voter Identification To remove a vote on behalf of a user, provide one or more identification fields: - id - Featurebase user ID - userId - External SSO user ID from your system - email - User's email address Resolution priority: id > userId > email > authenticated user If no fields are provided, the authenticated user's vote will be removed. ### Response Returns a confirmation object with: - object - Always "voter" - removed - Always true - id - The voter's user ID - postId - The post ID the vote was removed from ### Permissions Requires member-level access or higher. Endpoint: DELETE /v2/posts/{id}/voters Version: 2026-01-01.nova Security: bearerAuth ## Header parameters: - `Featurebase-Version` (string) API version for this request. Defaults to your organization's configured API version if not specified. Example: "2026-01-01.nova" ## Path parameters: - `id` (string, required) Post unique identifier Example: "507f1f77bcf86cd799439011" ## Request fields (application/json): - `id` (string) Featurebase user ID to remove as voter Example: "507f1f77bcf86cd799439011" - `userId` (string) External user ID from your system (matched via SSO) Example: "usr_12345" - `email` (string) Voter email to identify user Example: "john@example.com" ## Response 200 fields (application/json): - `object` (string, required) Object type identifier Enum: "voter" - `removed` (boolean, required) Indicates the voter was removed Enum: true - `id` (string, required) Voter unique identifier Example: "507f1f77bcf86cd799439011" - `postId` (string, required) Post ID the voter was removed from Example: "507f1f77bcf86cd799439012" ## Response 400 fields (application/json): - `error` (object, required) - `error.type` (string, required) The type of error returned Enum: "invalid_request_error" - `error.code` (string, required) Machine-readable error code Enum: "invalid_id", "invalid_request" - `error.message` (string, required) Human-readable error message Example: "An error occurred" - `error.param` (string) The parameter that caused the error (if applicable) Example: "id" - `error.status` (number, required) HTTP status code Enum: 400 ## Response 404 fields (application/json): - `error` (object, required) - `error.type` (string, required) The type of error returned Enum: "invalid_request_error" - `error.code` (string, required) Machine-readable error code Enum: "post_not_found", "voter_not_found" - `error.message` (string, required) Human-readable error message Example: "An error occurred" - `error.param` (string) The parameter that caused the error (if applicable) Example: "id" - `error.status` (number, required) HTTP status code Enum: 404