You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: PRD.md
+2-1Lines changed: 2 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -322,7 +322,8 @@ Note: Include metadata field for infos like http status code, CLI exit code, etc
322
322
Basic templating should be enabled in parts where we have templating such as execution part, headers and etc.
323
323
Loops and Control blocks should be applied in large text parts, like text execution and while parsing a file in file execution flow.
324
324
325
-
-**Basic**: replaces placeholders like `{{props.propertyName}}` and `{{env.VAR_NAME}}` with values.
325
+
-**Basic**: replaces placeholders like `{{props.propertyName}}` and `{{env.VAR_NAME}}` with values (always as strings).
326
+
-**JSON-Native**: resolves placeholders like `{!!props.propertyName!!}` and `{!!env.VAR_NAME!!}` to native JSON types (boolean, number, array, object, null). Must be the sole value in a field.
326
327
-**Loops**: For array and object props or env variables, Adapter should be able to parse `@for` -> `@endfor` and `@foreach` -> `@endforeach`
327
328
-**Control Blocks**: Adapter should be able to use control blocks: `@if` -> `@elseif` -> `@else` -> `@endif`
Copy file name to clipboardExpand all lines: docs/schema_reference.md
+229-6Lines changed: 229 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -660,19 +660,36 @@ This behavior prevents template substitution errors for optional properties that
660
660
"default": 100
661
661
},
662
662
"file_extensions": {
663
-
"type": "string",
664
-
"description": "Optional comma-separated list of file extensions"
663
+
"type": "array",
664
+
"description": "Optional list of file extensions",
665
+
"items": {
666
+
"type": "string"
667
+
}
665
668
}
666
669
},
667
670
"required": ["pattern", "directory"]
668
671
},
669
672
"execution": {
670
-
"type": "text",
671
-
"text": "Searching '{{props.pattern}}' in {{props.directory}} (images: {{props.include_images}}, max: {{props.max_results}})"
673
+
"type": "http",
674
+
"method": "POST",
675
+
"url": "https://api.example.com/search",
676
+
"body": {
677
+
"type": "json",
678
+
"content": {
679
+
"pattern": "{{props.pattern}}",
680
+
"directory": "{{props.directory}}",
681
+
"include_images": "{!!props.include_images!!}",
682
+
"case_sensitive": "{!!props.case_sensitive!!}",
683
+
"max_results": "{!!props.max_results!!}",
684
+
"file_extensions": "{!!props.file_extensions!!}"
685
+
}
686
+
}
672
687
}
673
688
}
674
689
```
675
690
691
+
**Note**: Use `{!! ... !!}` syntax for non-string types (boolean, number, array, object) to preserve their native JSON types. See [JSON-Native Placeholders](#json-native-placeholders) for more details.
0 commit comments