web
You’re offline. This is a read only version of the page.
close
Skip to main content

Announcements

News and Announcements icon
Community site session details

Community site session details

Session Id :
Power Platform Community / Forums / Power Apps / Create, send, and mana...
Power Apps
Suggested Answer

Create, send, and manage surveys inside the app

(1) ShareShare
ReportReport
Posted on by 2
I’m building a Power Apps application where users must create surveys, send/distribute them, and manage/publish them—all from within the app (Canvas / Data Driven).
 
How should I approach this? Is there a recommended pattern (custom Canvas/PCF + Dataverse tables, Customer Voice, or Microsoft Forms + Power Automate)?
Has anyone done this and can share a proof of concept, sample, or docs?
I have the same question (0)
  • Suggested answer
    Danielmp599 Profile Picture
    31 on at

    Hi AG-27030710-0,

    You can build a complete survey lifecycle (create, send, manage) inside Power Apps using different approaches depending on your flexibility and integration needs.

    Surveys: Title, Description, CreatedBy, Status
    Questions: QuestionText, Type (Text, Choice, Rating), SurveyID
    Responses: UserID, QuestionID, Answer
    Recipients: SurveyID, UserEmail, SentDate
    Use Canvas App with modern controls to build dynamic forms based on the survey structure.

    You can distribute surveys using:

    • Power Automate: Trigger flows to send survey links via email or Teams.
    • Deep links: Generate links to specific survey screens in your app.
    • QR codes: Embed links in printed materials or posters.

    Inside Power Apps:

    • Use galleries to list surveys and their status.
    • Use forms to edit questions or deactivate surveys.
    • Use dashboards (with Power BI or embedded charts) to view response analytics

    As an additional note, to avoid extra costs such as Dataverse licensing, you can use SharePoint as your data source.

     

     

  • Suggested answer
    developerAJ Profile Picture
    4,763 on at
    You should be building dynamic form using Gallery control 
     
     
    One list where you maintain the forms along with access permissions or any necessary requirements and other list with metadata for form as shown in videos
     

    If this solution helped you resolve your issue, kindly mark it as accepted — it makes it easier for others to find and also closes the discussion. If you found it useful, a Like ❤️ would be greatly appreciated!

    🤝 Let’s connect on LinkedIn || 📘 Explore more on my articles

  • developerAJ Profile Picture
    4,763 on at

    Please let us know if the issue still exists. If it has been resolved, kindly close the thread by accepting the solution

     

    If this solution helped you resolve your issue, kindly mark it as accepted — it makes it easier for others to find and also closes the discussion. If you found it useful, a Like ❤️ would be greatly appreciated!

    🤝 Let’s connect on LinkedIn || 📘 Explore more on my articles

  • Suggested answer
    MP From V Profile Picture
    8 on at
    Assuming you have ruled out Customer Voice and Microsoft Forms...
     
    We have built many "Dynamic Form" types of Dataverse backed solutions with a Canvas front end.
    Surveys can be one of them.
     
    The data model isn't too complex, here is an example (in Mermaid https://mermaid.live/)
    erDiagram
    
        USER ||--o{ SURVEY_INSTANCE : "completes"
        SURVEY ||--o{ QUESTION : "contains"
        SURVEY ||--o{ SURVEY_INSTANCE : "has responses"
        SURVEY_INSTANCE ||--o{ ANSWER : "records"
        QUESTION ||--o{ ANSWER : "is answered in"
    
        USER {
            int user_id PK
            string name
            string email
        }
    
        SURVEY {
            int survey_id PK
            string title
            string description
            datetime created_at
            int created_by FK -> USER.user_id
        }
    
        QUESTION {
            int question_id PK
            int survey_id FK -> SURVEY.survey_id
            string question_text
            string question_type  // e.g. text, multiple choice, rating
            int display_order
        }
    
        SURVEY_INSTANCE {
            int instance_id PK
            int survey_id FK -> SURVEY.survey_id
            int user_id FK -> USER.user_id
            datetime started_at
            datetime completed_at
            string status // e.g. in-progress, completed
        }
    
        ANSWER {
            int answer_id PK
            int instance_id FK -> SURVEY_INSTANCE.instance_id
            int question_id FK -> QUESTION.question_id
            string answer_value
        }
    
     
    You would then have a Canvas App that would present the Survey Types to the user that they are allowed to take.
    Or, pass a parameter into the Canvas App as to the Survey Type.
    Then you would collect your data within the Canvas App - paying attention to rendering each question one at a time in order (with the correct control as per the question type).
     
    Have a screen that can construct a URL that can be shared & e-mailed to people.
     
    Power BI can be the way you view the data visually.  Quickly view it all raw using a Model Driven App.
     

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Introducing the 2026 Season 1 community Super Users

Congratulations to our 2026 Super Users!

Kudos to our 2025 Community Spotlight Honorees

Congratulations to our 2025 community superstars!

Congratulations to the March Top 10 Community Leaders!

These are the community rock stars!

Leaderboard > Power Apps

#1
11manish Profile Picture

11manish 516

#2
WarrenBelz Profile Picture

WarrenBelz 428 Most Valuable Professional

#3
Valantis Profile Picture

Valantis 292

Last 30 days Overall leaderboard