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 / Copilot Studio / Issue with Adaptive Ca...
Copilot Studio
Suggested Answer

Issue with Adaptive Card Approval in Copilot Studio

(2) ShareShare
ReportReport
Posted on by 29

Hi everyone,

In Copilot Studio, I created a scenario where an agent runs whenever a new email arrives. If the email is identified as potential fraud, it sends a user approval request asking whether the email is fraudulent or not.

I attempted to implement this using an Adaptive Card, but I am encountering an error.

Has anyone faced a similar issue or knows how to resolve this?

Any guidance would be appreciated.

I have the same question (0)
  • Suggested answer
    frago Profile Picture
    226 on at
    Adaptive Card error

    Expected to get object for property recipient but got StringValue
     

    Instead of:

    "recipient": "user@company.com"
    Use
    "recipient": {
    "email": "user@company.com"
    }
     

    Start and approval delete ; in emails

    this is not good - user@work.com;

    this good - user@work.com or user@work.com;user1@work.com

     
     
     
    ------------------------------------------------------------
    If this solved your issue, please mark it as ✅ Accepted Answer.
    If it helped, feel free to give it a 🩷 Like!
     
    Best regards,
    Piotr
     
     
     
  • Patel Asutosh 27 Profile Picture
    29 on at
    @frago Thanks
     
    I have written it like this for the Adaptive Card, but I am still getting this error.
     

    Could you please check if I have written the formula incorrectly? I am new to Copilot Studio.

    Thank you!

  • Suggested answer
    Valantis Profile Picture
    4,803 on at
     
    The issue is that you are typing the JSON as plain text in the Custom value field. Copilot Studio reads it as a string, not an object, which causes the error.

    Instead of typing {"email": "user@company.com"} as text, you need to use a Power Fx formula to build the object.
    Change the Fill using dropdown from Custom value to Formula, then enter:

    { email: "user@company.com" }

    Or if the email is coming from a variable:

    { email: Topic.UserEmail }

    That will pass it as an actual object and should fix the StringValue error.
     

     

    Best regards,

    Valantis

     

    ✅ If this helped solve your issue, please Accept as Solution so others can find it quickly.

    ❤️ If it didn’t fully solve it but was still useful, please click “Yes” on “Was this reply helpful?” or leave a Like :).

    🏷️ For follow-ups  @Valantis.

    📝 https://valantisond365.com/

     

  • Suggested answer
    Sayali Profile Picture
    Microsoft Employee on at
    Hello @Patel Asutosh 27,
    Your issue is not caused by the Adaptive Card itself but by how the Teams and Approvals connectors are handling input data in your Copilot‑triggered Power Automate flow. In the Post adaptive card and wait for a response action, the recipient property currently receives a plain string email address, whereas the Teams connector expects an object (such as a conversation identity) — this mismatch results in the PowerFx error stating that it expected an object but received a string. Additionally, the Start and wait for an approval action is failing with an HTTP 400 error because the Assigned to field contains a trailing semicolon, causing the Approvals connector to interpret it as an invalid email array with an empty value. Even after correcting these issues, using synchronous approval steps inside a Copilot‑initiated flow can lead to runtime failures because the agent does not reliably maintain state across long‑running “wait for response” actions. To ensure stability in fraud‑review scenarios, it is recommended to adopt an asynchronous pattern where the flow posts the Adaptive Card, logs the user’s response in Dataverse or SharePoint through a separate listener flow, and allows the agent to retrieve the approval outcome later instead of pausing execution while waiting for user input.
  • Valantis Profile Picture
    4,803 on at

    Hi @Patel Asutosh 27 ,

    Just wanted to check in and see if everything is working now. If you still need any help, feel free to let me know.

    Also, if the issue is resolved, it would be great if you could mark the answer as solved so others with the same question can find it easily.

     

    Thanks and have a great day!

     

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 > Copilot Studio

#1
Valantis Profile Picture

Valantis 704

#2
Vish WR Profile Picture

Vish WR 249

#3
Haque Profile Picture

Haque 244

Last 30 days Overall leaderboard