Reference: Use this article when a custo-manifest action must display a visible result in Rainbow.
You can use this article to display a visible result from a custo-manifest action. You will see how to return Markdown, extract Markdown from JSON, or render an Adaptive Card in Rainbow.
Markdown display
Markdown is the default display format. It is useful for simple text, links, lists and short structured output.
"responseType": "markdown"| Markdown | Result |
|---|---|
# Title |
Heading. |
**Important** |
Bold text. |
- item |
List item. |
[Rainbow](https://www.openrainbow.com) |
Link. |
Markdown extracted from JSON
When a REST service returns JSON, use displayJsonField to identify the field that contains Markdown to display.
{
"responseType": "json",
"displayJsonField": "message",
"command": {
"commandType": "rest",
"method": "GET",
"url": "https://api.example.com/customer"
}
}Display through stdout on Desktop
On Rainbow Desktop, a local script or executable can write Markdown to standard output. Rainbow can display this output in a popup.
"command": {
"commandType": "file",
"url": "${custo.path}\display.bat"
},
"responseType": "markdown"
Warning: stdout display relies on local script execution and is therefore Desktop-only. It is not available on Rainbow Web.
Adaptive Cards
Adaptive Cards provide richer rendering: structured text, images, inputs and actions. They can be defined inline, returned by a REST service, or combined with data returned by a REST service.
| Field | Purpose |
|---|---|
adaptiveCardTemplate |
Inline Adaptive Card template. |
adaptiveCardTemplateJsonField |
JSON field containing the template returned by the REST service. |
adaptiveCardContentJsonField |
JSON field containing data used by the template. |
adaptiveCardSubmitUrl |
POST endpoint called when an Action.Submit is invoked. |
Adaptive Card support overview
| Element or action | Support |
|---|---|
| TextBlock, RichTextBlock, Image, ImageSet, Container, ColumnSet, FactSet | Supported. |
| Input.Text, Input.Number, Input.Date, Input.Time, Input.Toggle, Input.ChoiceSet | Supported. |
| Action.OpenUrl | Supported. Opens the URL in the browser. |
| Action.Submit | Supported. Rainbow sends a POST request to adaptiveCardSubmitUrl. |
| Action.ToggleVisibility, Action.ShowCard | Supported where the client Adaptive Card renderer supports them. |
| Media, Carousel | Limited rendering. Test on Rainbow Web and Desktop before production. |
| Badge, CodeBlock and newer Adaptive Card 1.6+ features | Not supported unless explicitly announced for the target Rainbow client version. |
Note: Adaptive Card behavior can vary slightly by Rainbow client version. Always test the final card on both Web and Desktop when the manifest targets both clients.