Build a Marketing Request Ticketing System

Automate marketing request intake using Microsoft Lists, Forms, and Power Automate.

Introduction

30 Second Summary

Marketing teams get buried in ad-hoc requests from every direction. Slack messages, emails, hallway conversations. Without a system, things slip through the cracks.

In this project, you will build a complete marketing request ticketing system using Microsoft 365 tools. Anyone in your organization fills out a form, and the request automatically appears as a trackable ticket on your team's board.

What You'll Build

You'll demo a system where a colleague submits a marketing request form and, within seconds, a ticket appears on your team's Kanban board in Microsoft Teams while the requester gets a confirmation email.

By the end of this project, you'll have:

  • A self-service intake form built in Microsoft Forms where anyone can submit marketing requests with type, priority, and deadline details.
  • An automated pipeline powered by Power Automate that instantly converts form submissions into tickets on a Kanban-style board. No manual data entry needed.
  • A team workspace inside Teams where your marketing team manages a Microsoft Lists ticket board, dragging requests through status columns (New, In Progress, Completed) without switching apps.
  • Secret Mission: Add automated status-change notifications so requesters get an email the moment their ticket moves forward.

Are there any prerequisites?

You need a Microsoft 365 work or school subscription with access to Microsoft Lists, Microsoft Forms, Power Automate, and Microsoft Teams. All tools run in your browser, so no additional software is required.

Before We Start

Before We Start...

Before we dive in, let's lock in what you're about to build and why it matters for your marketing team.

Set Up Your Marketing Tickets List in Teams

Every marketing team gets flooded with requests from across the organization. Without a central system, those requests arrive via email, chat messages, and hallway conversations. Things get lost.

In this step, you'll create a dedicated workspace inside Microsoft Teams where every marketing request lives as a trackable ticket. You'll build a Microsoft Lists database with custom columns for request type, priority, status, and more.

In this step, get ready to:
  • Create a Team and channel in Microsoft Teams for marketing requests.
  • Build a Microsoft List as a tab inside the channel.
  • Add custom columns to track request details like type, priority, and status.
Create a Team and channel for marketing requests

Your marketing team needs a home base where they can collaborate on incoming work. A dedicated Team with a channel for requests keeps everything organized in one place.

  • Open your browser and navigate to teams.microsoft.com.
  • Sign in with your Microsoft 365 work or school account.
  • On the left side of the app, select Teams (or Chat if you're in the combined view).
  • Select New items from the top of your list of chats and channels.
  • Select New team.
  • Enter Marketing as the team name.
  • Set the privacy to Private so only team members can access it.
  • In the first channel name field, enter Marketing Requests.
  • Click Create.

You should now see the Marketing team in your left sidebar with the Marketing Requests channel listed beneath it.

Don't see the option to create a team?

Your organization may restrict who can create teams. If you don't see New team as an option, contact your IT admin to request permission.

If you already have a Marketing team, you can use it. Just create a new channel called Marketing Requests inside it by selecting More options next to the team name, then Add channel.

Create a new Microsoft List in the channel

Now you'll create the database that stores every marketing ticket. Building it directly inside the channel means your team can manage tickets without switching apps.

  • Open the Marketing Requests channel by clicking on it in the left sidebar.
  • At the top of the channel (next to Posts and Files tabs), click the + button to add a tab.
  • Search for and select Lists in the dialog, then click Save.
  • Select Create a list.
  • Select Blank list (you'll add your own custom columns).
  • Enter Marketing Tickets as the name.
  • Add a description like Tracks all incoming marketing requests.
  • Click Create.

You should now see a new Marketing Tickets tab in your channel with an empty list showing just the built-in Title column.

Why create the list inside Teams?

Microsoft Lists uses the same underlying technology as SharePoint Lists, but with a modern interface and seamless Teams integration. By creating it as a channel tab, your team sees new tickets appear right where they already chat and collaborate.

The built-in Title column will serve as the request title. You don't need to create a separate Title column.

Add the ticket columns to your list

Your list needs columns to capture the key details of each marketing request. You'll add columns for request type, priority, workflow status, requester info, and deadlines.

  • In the Marketing Tickets list, click + Add column at the right end of the column headers.
  • Select Choice from the dropdown.
  • In the Name field, enter Request Type.
  • Add these choices, one per line: Social Media Post, Blog Post, Email Campaign, Event Graphic, Video, Other.
  • Click Save.

You should see Request Type appear as a new column header in your list.

How do I add each choice?

In the Create a column panel, you'll see a text field for each choice. Type one option, press Enter to add another line, and repeat for all six options. The exact layout may vary slightly depending on your Microsoft 365 version.

  • Click + Add column again, select Choice, name it Priority, and add these choices: Low, Medium, High, Urgent. Click Save.
  • Click + Add column again, select Choice, name it Status, and add these choices: New, In Progress, Completed. Click Save.

Your list should now show four columns: Title, Request Type, Priority, and Status. These three Choice columns define the core workflow.

  • Click + Add column, select Text (Single line of text), name it Requester Name, and click Save.
  • Click + Add column, select Text (Single line of text), name it Requester Email, and click Save.
  • Click + Add column, select Date and time, name it Due Date, and click Save.
  • Click + Add column, select Multiple lines of text, name it Description, and click Save.
  • Click + Add column, select Person (Person or Group), name it Assigned To, and click Save.

Can't find a column type?

If you don't see the exact type you need in the dropdown, scroll down and look for More or See all column types at the bottom of the list. Person or Group may appear as just Person in some versions.

Before you check the final result, how many columns do you expect to see in your list header (including the built-in Title column)?

Count the columns across your list header. You should see 9 columns total: Title, Request Type, Priority, Status, Requester Name, Requester Email, Due Date, Description, and Assigned To. The list should be empty with no items yet.

Missing a column or see the wrong type?

If a column has the wrong type (for example, you accidentally created Priority as Text instead of Choice), click the column header, select Column settings > Edit, and either fix it or delete it and recreate it.

If you don't see all 9 columns, some may be hidden. Click any column header, select Column settings > Show/hide columns, and check the boxes for any missing columns.

Still having trouble? Help me fix my list columns in Microsoft Teams.

Your ticket database is ready to receive requests. Next up, you'll build the intake form that people across your organization will use to submit marketing requests.

Build the Intake Form

Your ticket board is ready to receive requests. But you can't give everyone in your organization direct edit access to it.

You need a clean, simple intake layer that anyone can fill out without ever touching the board itself. Microsoft Forms gives you exactly that. In this step, you'll build a form that collects every detail the marketing team needs to action a request.

In this step, get ready to:
  • Create a new intake form in Microsoft Forms.
  • Add seven questions that capture all the details your team needs.
  • Test the form with a sample submission.
Create a new form in Microsoft Forms

Microsoft Forms lives at its own URL, separate from Teams. You'll create the form there and later connect it to your list with automation.

  • Open a new browser tab and go to forms.office.com.
  • Sign in with the same Microsoft 365 account you used for Teams.
  • Click New Form in the top-left area of the page.

A blank form editor opens with an "Untitled form" placeholder at the top.

  • Click the Untitled form text at the top and replace it with Marketing Request Form.
  • Click the description area below the title and type Submit a request to the marketing team.

You should now see your form title and description displayed at the top of the editor. The form has no questions yet.

Don't see the description field?

Some views collapse the description area. Click directly below the form title text to reveal it. If it still doesn't appear, try clicking the title first, then tabbing down.

Help me find the description field in Microsoft Forms

Add the intake questions

Each question you add maps to a piece of information your marketing team needs to act on a request. You'll add seven questions total, mixing text fields, choice lists, and a date picker.

  • Click + Add new in the form editor.
  • Select Text as the question type.
  • Type Request Title in the question text field.
  • Toggle Required on (the toggle at the bottom-right of the question card).

Your first question appears in the form editor. Each new question you add will stack below it.

Why make questions required?

Toggling Required on means the form won't let someone submit without filling in that field. This prevents incomplete requests from landing in your team's queue.

Now add a Choice question for the request type. Choice questions let the requester pick from a predefined list.

  • Click + Add new again.
  • Select Choice as the question type.
  • Type What type of marketing asset do you need? as the question text.
  • Replace the default "Option 1" and "Option 2" placeholders with these options (click Add option to create more): Social Media Post, Blog Post, Email Campaign, Event Graphic, Video, Other.
  • Toggle Required on.

You should see the choice question with all six options listed. Next, add the description field.

  • Click + Add new and select Text.
  • Type Describe your request as the question text.
  • Click Long answer (the toggle below the question text) to switch from short text to a multi-line text box.
  • Toggle Required on.

Three questions done, four to go. Now add a second Choice question for priority.

  • Click + Add new and select Choice.
  • Type Priority as the question text.
  • Add four options: Low, Medium, High, Urgent.
  • Toggle Required on.

Now add the date question so requesters can specify their deadline.

  • Click + Add new and select Date.
  • Type When do you need this by? as the question text.
  • Toggle Required on.

Finally, add two short text questions to capture the requester's identity.

  • Click + Add new and select Text.
  • Type Your Name as the question text.
  • Toggle Required on.
  • Click + Add new and select Text.
  • Type Your Email as the question text.
  • Toggle Required on.

Scroll through your form editor. You should see all seven questions listed in order, each marked as required.

Why capture name and email as form fields?

When the automation creates a ticket later, the list's "Created By" column will show the automation account, not the person who submitted the form. Capturing the requester's name and email as explicit fields ensures your team always knows who made the request.

Preview and test the form

Before connecting this form to anything, you want to confirm it works from the requester's perspective. The preview mode shows exactly what someone filling out the form will see.

  • Click Preview at the top of the form editor.

The form switches to a live preview. You can now fill it in as if you were a requester.

  • In the Request Title field, type Test request - social media graphic.
  • For What type of marketing asset do you need?, select Social Media Post.
  • In the Describe your request field, type a short test description like Need a LinkedIn post graphic for our product launch next week.
  • For Priority, select High.
  • For When do you need this by?, pick any date in the future.
  • Type your name in the Your Name field.
  • Type your email address in the Your Email field.
  • Click Submit.

You should see a confirmation message that your response was submitted. Now verify it was captured.

  • Click Back to exit the preview mode and return to the form editor.
  • Click the Responses tab at the top of the form.

What do you expect to see in the Responses tab? Think about it before you look.

You should see "1" response listed, with the test data you just submitted. The Responses tab shows a summary of all submissions and lets you view individual answers.

Don't see your response?

Make sure you clicked Submit during the preview, not just closed the preview window. If the Responses tab shows 0, go back to Preview, fill the form out again, and click Submit.

My form preview submission didn't show up in the Responses tab

Where do form responses live?

Right now, responses only live inside Microsoft Forms. Your marketing team would have to check this Responses tab manually to see new requests. In the next step, you'll use Power Automate to bridge this gap and push submissions directly into your ticket board.

Your intake form is live and capturing responses. Next up, you'll build the automation that turns every form submission into a ticket on your board and sends the requester a confirmation email.

Connect the Form to Your List with Power Automate

Your intake form is live and collecting responses. But right now, those responses just sit in a Responses tab that your team would have to check manually.

In this step, you will use Power Automate to bridge that gap. Every time someone submits the form, a flow will instantly create a ticket in your Marketing Tickets list and send the requester a confirmation email.

In this step, get ready to:
  • Create an automated flow triggered by form submissions.
  • Map form responses to columns in your Marketing Tickets list.
  • Add a confirmation email that goes to the requester automatically.
Create a new automated cloud flow

Power Automate is where you build the automated pipeline between your form and your list. You will start by creating a flow that listens for new form submissions.

  • Open a new browser tab and go to make.powerautomate.com.
  • Sign in with the same Microsoft 365 account you used for Teams and Forms.
  • In the left sidebar, click Create.
  • Select Automated cloud flow.
  • In the Flow name field, type Marketing Ticket Creator.
  • In the Choose your flow's trigger search box, search for When a new response is submitted.
  • Select the Microsoft Forms result from the list.
  • Click Create.

The flow designer opens with your trigger already in place. Now you need to tell it which form to watch.

  • Click on the When a new response is submitted trigger card in the designer.
  • In the Form Id dropdown, select Marketing Request Form.

What is Power Automate?

Power Automate is Microsoft's no-code automation tool. It connects different M365 services (and hundreds of third-party apps) using triggers and actions.

A trigger starts the flow when something happens. Actions are the steps the flow performs in response. You chain them together to build a complete automation.

You should see your trigger configured with "Marketing Request Form" displayed in the Form Id field.

Add actions to get response details and create the list item

The trigger alone only gives Power Automate a Response Id. You need a second action to read the actual form answers, and a third action to push those answers into your list.

  • Below the trigger, click the + button, then click Add an action.
  • Search for Get response details and select the Microsoft Forms result.
  • In the Form Id dropdown, select Marketing Request Form.
  • Click inside the Response Id field. The dynamic content panel opens on the right.
  • From the dynamic content list (under the trigger), select Response Id.

Why do you need Get response details?

The trigger only fires a signal that says a response was submitted and provides a Response Id. It does not include the actual answers.

The Get response details action uses that Id to fetch all the field values from the form. This is what gives you access to the requester's name, email, request type, and everything else they filled out.

Now you will add the action that creates a ticket in your list every time a form response comes in.

  • Below the Get response details action, click + and then Add an action.
  • Search for Create item and select the SharePoint result.
  • In the Site Address dropdown, select the SharePoint site associated with your Marketing team. It appears as a URL containing your team name.
  • In the List Name dropdown, select Marketing Tickets.

Once you select the list, Power Automate displays the list's columns as fields you can fill in. Map each field using dynamic content from the Get response details action.

  • Click inside the Title field and select the dynamic content for the Request Title question from your form.
  • Click inside Request Type and select the dynamic content for What type of marketing asset do you need?.
  • Click inside Description and select the dynamic content for Describe your request.
  • Click inside Priority and select the dynamic content for the Priority question.
  • Click inside Due Date and select the dynamic content for When do you need this by?.
  • Click inside Requester Name and select the dynamic content for Your Name.
  • Click inside Requester Email and select the dynamic content for Your Email.
  • Click inside Status and type New manually. Do not use dynamic content for this field.

Why type Status manually?

Every new ticket should start with a status of "New" regardless of what the requester submitted. By hardcoding this value, you ensure all incoming requests land in the same starting column on your Kanban board.

Don't see all the columns?

If you only see the Title field and not your custom columns (Request Type, Priority, Status, etc.), look for a Show all link or an Advanced parameters section at the bottom of the Create item card. Click it to reveal the remaining fields.

If columns still do not appear, confirm you selected the correct Site Address and List Name. The list must be the one you created inside the Marketing Requests channel.

Help me find my list columns in the Create item action.

Add a confirmation email to the requester

Your flow now creates a ticket, but the person who submitted the form has no idea it worked. A quick confirmation email closes the loop and sets expectations.

  • Below the Create item action, click + and then Add an action.
  • Search for Send an email (V2) and select the Office 365 Outlook result.
  • If prompted to sign in or authorize the Office 365 Outlook connection, accept and sign in with your M365 account.
  • Click inside the To field. From the dynamic content panel, select the Your Email value (this is the requester's email captured by Get response details).
  • In the Subject field, type Your marketing request has been received.
  • Click inside the Body field. Type: Hi! We've received your request:
  • Press Enter, then insert the dynamic content for Request Title from the form.
  • On the next line, type: Priority: and then insert the dynamic content for Priority.
  • On the next line, type: Our team will be in touch soon.

What does Send an email (V2) do?

This action sends an email from your Microsoft 365 mailbox through the Office 365 Outlook connector. The email goes to the requester's address (pulled from the form response) and includes dynamic content so each confirmation is personalized with their request title and priority level.

  • Click Save in the top-left corner of the flow designer.

You should see a green banner confirming the flow saved successfully. Your flow is now on and ready to process submissions.

Before you test, predict: if you submit a new form response right now, what do you think will happen in your Marketing Tickets list and in the requester's inbox?

  • Switch back to your forms.office.com tab and click on your Marketing Request Form.
  • Click Preview at the top of the form.
  • Fill out all fields with a realistic test submission.
  • Click Submit.
  • Wait about 30 seconds for the flow to process.
  • Switch back to Microsoft Teams and open the Marketing Tickets list tab in the Marketing Requests channel.

You should see your new test item in the list with all fields correctly populated and the Status column set to New.

  • Check the email inbox of the address you entered in the "Your Email" field. You should see a confirmation email with the subject "Your marketing request has been received" and your request details in the body.

No ticket appeared in the list?

Return to make.powerautomate.com and click My flows in the left sidebar. Click on Marketing Ticket Creator and check the run history at the bottom. A failed run shows a red X with an error message telling you which action failed.

Common causes: you selected the wrong form in the trigger or Get response details, the Site Address does not match your Marketing team site, or a required field mapping was left empty in the Create item action.

Help me debug why my Power Automate flow did not create a list item.

Your automation pipeline is wired up and working end to end. Next up, you will give your team a proper Kanban board view so they can drag tickets between status columns without ever leaving Teams.

Test the Full Pipeline and Set Up the Kanban Board

Your form, list, and automation flow are all connected. Power Automate should be creating tickets and sending confirmation emails whenever someone submits a request.

There's still a gap though. Your list shows tickets in a flat grid, making it impossible to see the status of requests at a glance.

In this step, you'll verify the full pipeline works end-to-end and then build a Kanban board so your team can visually manage their queue.

In this step, get ready to:
  • Run an end-to-end test of the form-to-ticket pipeline.
  • Create a Board view for visual ticket management.
  • Assign and move a ticket to simulate the daily workflow.
Run an end-to-end test

You built the flow in the previous step, but you haven't proven that the entire chain works from a requester's perspective. Time to submit a real request and watch it land in your list.

  • Open your Marketing Request Form by clicking Collect responses at the top of the form in forms.office.com and copying the link into a new browser tab.
  • Fill out the form with a realistic test submission:
  • Click Submit.

Before you check the list, what do you expect to see there? Think about what the flow does at each step.

  • Wait 30 to 60 seconds for Power Automate to process the submission.
  • Switch back to Microsoft Teams and open the Marketing Tickets list tab in the Marketing Requests channel.
  • Confirm a new item appeared with all fields correctly filled and Status set to New.
  • Open the email inbox for the address you entered in the form.
  • Confirm you received a confirmation email with the subject line Your marketing request has been received.

You should see the ticket in your list with the title Q3 Product Launch Social Graphics, priority set to High, and status showing New. The confirmation email should include the request title and priority.

Ticket not appearing in the list?

  • Check that the flow is turned on. Return to make.powerautomate.com, select My flows, and confirm the flow status shows On.
  • Check the flow's run history. Click on the flow name, then look at the 28-day run history section. If a run shows a red exclamation icon, expand it to see which action failed and why.
  • If no runs appear at all, the trigger did not fire. Wait another minute and re-submit the form. Triggers can take up to 5 minutes on the first run.
  • If the Create item action failed, double-check that the Site Address and List Name fields in the flow match your Marketing team site and the list name Marketing Tickets exactly.

Still stuck? Help me figure out why my Power Automate flow isn't creating a list item after a form submission.

Create a Board view for the Kanban experience

Your list works, but it looks like a spreadsheet. A Board view groups tickets into columns by status so you can see at a glance what is new, in progress, and done.

  • In the Marketing Tickets list (inside the Teams tab), click the view dropdown near the top left. It will say All items or similar.
  • Select Create new view.
  • Choose Board as the view type.
  • Set the Organize your board by field to Status.
  • Enter Ticket Board as the view name.
  • Click Create.

You should now see columns for New, In Progress, and Completed with your test ticket displayed as a card in the New column.

What is a Board view?

A Board view in Microsoft Lists is a Kanban-style layout. Each value of your chosen column (in this case, Status) becomes a column on the board. Items appear as cards that you can drag between columns.

This gives your marketing team a visual workflow where they can immediately see how many requests are waiting, how many are being worked on, and what has been completed.

Don't see Status as a grouping option?

The Board view only supports Choice-type columns for grouping. If Status does not appear, make sure the Status column in your list is set to the Choice type with values New, In Progress, and Completed.

Still need help? Help me set up a Board view in Microsoft Lists grouped by a Status column.

Assign a ticket and drag it to In Progress

The board is set up. Now simulate the daily workflow your team will use by assigning and moving a ticket.

  • Click on your test ticket card in the New column to open its details.
  • Set the Assigned To field to yourself (or a teammate).
  • Close the item details panel.
  • Drag the ticket card from the New column to the In Progress column.

The card should move to the In Progress column. This is exactly how your team will manage their queue day-to-day: pick up a ticket, assign it, and drag it across the board as work progresses.

Card won't drag between columns?

Drag-and-drop in Board view requires that no sort is applied to the view. If the board has a sort, it disables drag-and-drop. Create a fresh Board view without any sort configuration.

Need help? Help me enable drag-and-drop on my Microsoft Lists Board view.

Your pipeline is proven end-to-end. Anyone in your organization can submit the form, a ticket automatically appears on your team's board, and the requester gets an email confirmation. Next up: a secret mission that keeps requesters informed as their ticket moves through the pipeline.

Secret mission

Add Automated Status-Change Notifications

Your ticketing system works, but requesters have no idea when their ticket is being worked on or done. Can you add automated emails that fire when a ticket moves to "In Progress" or "Completed" so requesters stay informed without your team sending manual updates?

Clean Up Your Resources

Clean Up Your Resources

Decide whether to keep your resources running, pause them to come back later, or delete them entirely. This project runs entirely within your Microsoft 365 subscription, so there are no ongoing costs for any of the resources you created.

Resources you used:

  • Microsoft Team ("Marketing") with the "Marketing Requests" channel.
  • Microsoft List ("Marketing Tickets") as a tab in the channel.
  • Microsoft Form ("Marketing Request Form") at forms.office.com.
  • Power Automate flow: "Marketing Ticket Creator."
  • Power Automate flow: "Marketing Ticket Status Notifier."

Keep everything running

No action needed. Choose this if your ticketing system is live and you want your team to start using it. Share the form link with your organization so people can submit marketing requests right away.

Pause - I'll come back to this later

Turn off your Power Automate flows so they stop processing submissions while you are away. Your list, form, and team will remain intact.

  • Go to make.powerautomate.com and select My flows in the left navigation.
  • Find "Marketing Ticket Creator," click the vertical ellipsis (three dots) next to it, and select Turn off.
  • Repeat for "Marketing Ticket Status Notifier."
  • When you are ready to resume, return to My flows, click the vertical ellipsis next to each flow, and select Turn on.

Delete - I don't want to use this again

Remove all project resources from your Microsoft 365 environment. Follow each step below.

Delete the Power Automate flows
  • Go to make.powerautomate.com and select My flows in the left navigation.
  • Find "Marketing Ticket Creator," click the vertical ellipsis (three dots) next to it, and select Delete.
  • Click Delete again to confirm.
  • Repeat for "Marketing Ticket Status Notifier."
Delete the Microsoft Form
  • Go to forms.office.com and click the My forms tab.
  • Find "Marketing Request Form," click More options (three dots) on the form tile, and select Delete.
  • To permanently remove it, go to the Deleted forms tab, click More options on the form, and select Delete again.
Delete the Microsoft Team
  • Open Microsoft Teams at teams.microsoft.com.
  • Find the "Marketing" team in your teams list.
  • Click More options (three dots) next to the team name and select Delete team.
  • Confirm the deletion. This also removes the associated SharePoint site, which deletes your Microsoft List.

Why does deleting the team also remove the list?

Microsoft Lists created inside a Teams channel are stored on the team's SharePoint site. When you delete the team, the SharePoint site and all its contents (including your Marketing Tickets list) are removed automatically.

Nice Work!

Nice Work!

You just built a complete marketing request ticketing system that lives entirely inside Microsoft 365. From intake form to automated ticket creation to a Kanban board your team manages without leaving Teams.

Here's what you learned:

  • Built a Microsoft Lists ticket database with custom columns and a Board view for Kanban-style ticket management inside Teams.
  • Created a Microsoft Forms intake form that gives anyone in your organization a self-service way to submit marketing requests.
  • Automated the form-to-ticket pipeline with Power Automate, connecting a form trigger to response details retrieval, list item creation, and a confirmation email to the requester.
  • (Secret Mission) Added automated status-change notifications so requesters receive an email the moment their ticket moves to "In Progress" or "Completed."

Ready to quiz yourself?