CARD-ACTION-STATUS response header fails to parse in Microsoft Teams Private Channels

528 Views Asked by At

When we send a MessageCard to a Microsoft Teams channel via an "Incoming Webhook" connector, when that card contains an HttpPOST potentialAction and the target of the POST returns a CARD-ACTION-STATUS header in the reply, on public channels the content of that header is displayed as a new message. However, if the same MessageCard is sent to a private channel the CARD-ACTION-STATUS header fails to parse and the error message "There was a problem submitting your changes. Try again in a minute" appears.

This worked perfectly fine until around Dec 8th, 2020. I have also verified that the target of the HttpPOST did receive the request and did reply with the CARD-ACTION-STATUS header for both public and private channels.

This is the message card I posted to the Teams channel via an Incoming Webhook Connector :

{
    "@type": "MessageCard",
    "@context": "https://schema.org/extensions",
    "expectedActors": [],
    "themeColor": "993399",
    "hideOriginalBody": true,
    "title": "Simple Teams MessageCard",
    "text": "Card Action Status",
    "potentialAction": [
        {
            "@type": "HttpPOST",
            "name": "Test HttpPOST",
            "target": "https://mydummyapi.execute-api.us-east-1.amazonaws.com/sandbox/teams",
            "bodyContentType": "application/json",
            "body": "{'message': 'Anybody There'}"
        }
    ]
}

This is the result from a public channel : public channel result

This is the result from a private channel : private channel result

One last thing of note. The response header "CARD-UPDATE-IN-BODY" works on both private and public channels when you pass a new message card in the body of the response. So it is only with the "CARD-ACTION-STATUS" header, and only in private channels.

1

There are 1 best solutions below

1
Jagadeesh-MSFT On

For better visibility coping answer from @nikitha comments

We are not able to repro the issue at our end. When we use http post request we are receiving the http post to the target URL.