Pipedream · Schema
ConfigurablePropBase
A configuration or input field for a component.
ProCode_API_CompositionWorkflowsConnectMCPEmbedded IntegrationsManaged AuthAI Agents
Properties
| Name | Type | Description |
|---|---|---|
| name | string | When building `configuredProps`, make sure to use this field as the key when setting the prop value |
| type | string | |
| label | string | Value to use as an input label. In cases where `type` is "app", should load the app via `getApp`, etc. and show `app.name` instead. |
| description | string | A description of the prop, shown to the user when configuring the component. |
| optional | boolean | If true, this prop does not need to be specified. |
| disabled | boolean | If true, this prop will be ignored. |
| readOnly | boolean | If true, this prop is read-only — its value is either fixed by the component author (`static`) or the prop is purely informational (e.g. `alert`, `dir`). Connect clients should render it without treat |
| hidden | boolean | If true, should not expose this prop to the user |
| remoteOptions | boolean | If true, call `configureComponent` for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { la |
| useQuery | boolean | If true, calls to `configureComponent` for this prop support receiving a `query` parameter to filter remote options |
| reloadProps | boolean | If true, after setting a value for this prop, a call to `reloadComponentProps` is required as the component has dynamic configurable props dependent on this one |
| withLabel | boolean | If true, you must save the configured prop value as a "label-value" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "#/components/schemas/ConfigurablePropBase",
"title": "ConfigurablePropBase",
"type": "object",
"description": "A configuration or input field for a component.",
"required": [
"name",
"type"
],
"properties": {
"name": {
"type": "string",
"description": "When building `configuredProps`, make sure to use this field as the key when setting the prop value"
},
"type": {
"type": "string",
"enum": [
"$.airtable.baseId",
"$.airtable.fieldId",
"$.airtable.tableId",
"$.airtable.viewId",
"$.discord.channel",
"$.discord.channel[]",
"$.interface.apphook",
"$.interface.http",
"$.interface.timer",
"$.service.db",
"alert",
"any",
"app",
"boolean",
"data_store",
"dir",
"http_request",
"integer",
"integer[]",
"object",
"sql",
"string",
"string[]"
],
"x-fern-enum": {
"$.discord.channel[]": {
"name": "DiscordChannelArray"
},
"integer[]": {
"name": "IntegerArray"
},
"string[]": {
"name": "StringArray"
}
}
},
"label": {
"type": "string",
"description": "Value to use as an input label. In cases where `type` is \"app\", should load the app via `getApp`, etc. and show `app.name` instead.",
"nullable": true
},
"description": {
"type": "string",
"description": "A description of the prop, shown to the user when configuring the component.",
"nullable": true
},
"optional": {
"type": "boolean",
"description": "If true, this prop does not need to be specified.",
"nullable": true
},
"disabled": {
"type": "boolean",
"description": "If true, this prop will be ignored.",
"nullable": true
},
"readOnly": {
"type": "boolean",
"description": "If true, this prop is read-only \u2014 its value is either fixed by the component author (`static`) or the prop is purely informational (e.g. `alert`, `dir`). Connect clients should render it without treating it as a configurable input.",
"nullable": true
},
"hidden": {
"type": "boolean",
"description": "If true, should not expose this prop to the user",
"nullable": true
},
"remoteOptions": {
"type": "boolean",
"description": "If true, call `configureComponent` for this prop to load remote options. It is safe, and preferred, given a returned list of { label: string; value: any } objects to set the prop value to { __lv: { label: string; value: any } }. This way, on load, you can access label for the value without necessarily reloading these options",
"nullable": true
},
"useQuery": {
"type": "boolean",
"description": "If true, calls to `configureComponent` for this prop support receiving a `query` parameter to filter remote options",
"nullable": true
},
"reloadProps": {
"type": "boolean",
"description": "If true, after setting a value for this prop, a call to `reloadComponentProps` is required as the component has dynamic configurable props dependent on this one",
"nullable": true
},
"withLabel": {
"type": "boolean",
"description": "If true, you must save the configured prop value as a \"label-value\" object which should look like: { __lv: { label: string; value: any } } because the execution needs to access the label",
"nullable": true
}
}
}