Goals:
Some actions may require user input or other multi-step interactions. For example:
In general, it’s a good principle for actions that have side effects to present some form of confirmation UI.
Cast actions that require user input or confirmation should use a frame to collect it. Since the frame is not a “real” cast embed, clients will have to render the frame in a special context, like a bottom sheet in a mobile app or a modal on web.
Cast action frames rendered in a special context outside of a cast embed.
Action servers may return a response in the following form to display a frame:
{"type": "frame", "frameUrl": "<https://frame.example.com>"}
Client applications must:
'frame'
frameUrl
frameUrl
must begin with https://
'message'
message
string < 80 characters