Create engaging poll posts that drive community interaction and gather valuable feedback. Poll posts combine questions with multiple voting options, time limits, and real-time results.

Multiple Options

Create polls with 2-10 answer options

Time Limits

Set custom voting deadlines or keep open indefinitely

Overview

Poll posts enable interactive community engagement by allowing users to vote on questions. Create polls with multiple options, set time limits, and track real-time voting results.
A Poll must be created first before creating the post. See Poll Creation Guidelines for instructions.
1

Create Poll

Use the Poll Repository to create a poll with questions and options
2

Create Post

Create a post using the poll ID with optional description text
3

Share & Engage

Users can vote and see real-time results in their feeds

Parameters

ParameterTypeRequiredDescription
textStringYesPost content (max 20,000 characters)
pollIdStringYesID of the created poll
targetTypeEnumYesTarget destination (community or user feed)
tagsArrayNoSearchable tags (not available in Flutter)
metadataObjectNoCustom fields for extended functionality
func createPollPost(pollId: String) async {
    // Build your post structure
    let postBuilder = AmityPollPostBuilder()
    postBuilder.setText("Check out this poll!")
    postBuilder.setPollId(pollId)
    // Create a post from the builder
    do {
        let post = try await postRepository.createPollPost(postBuilder, targetId: nil, targetType: .user, metadata: nil, mentionees: nil)
    } catch {
        // Handle error here
    }
}

Troubleshooting

Common Use Cases

Community Feedback

Gather opinions on community decisions and improvements

Event Planning

Coordinate dates, times, and preferences for events

Product Research

Collect user preferences and feature requests

Quick Surveys

Run simple polls for engagement and data collection