InputField is a JSON Structure definition published by HubSpot, describing 3 properties, of which 2 are required. It conforms to the https://json-structure.org/draft/2020-12/schema meta-schema.
{
"type": "object",
"description": "An input field for the action",
"name": "InputField",
"properties": {
"typeDefinition": {
"type": "object",
"description": "Definition of a field's type and configuration",
"properties": {
"name": {
"type": "string",
"description": "The programmatic name of the field"
},
"type": {
"type": "string",
"description": "The data type of the field",
"enum": [
"STRING",
"NUMBER",
"BOOL",
"DATE",
"DATETIME",
"ENUMERATION",
"PHONE_NUMBER",
"CURRENCY"
]
},
"fieldType": {
"type": "string",
"description": "The UI field type for input",
"enum": [
"TEXT",
"TEXTAREA",
"NUMBER",
"SELECT",
"BOOLEANCHECKBOX",
"DATE",
"FILE"
]
},
"label": {
"type": "string",
"description": "Human-readable label for the field"
},
"description": {
"type": "string",
"description": "Description of the field"
},
"options": {
"type": "array",
"description": "Options for enumeration fields",
"items": {
"type": "object",
"description": "An option for an enumeration field",
"properties": {
"label": {
"type": "string",
"description": "Display label for the option"
},
"value": {
"type": "string",
"description": "The value of the option"
},
"displayOrder": {
"type": "integer",
"description": "Order in which to display the option"
}
},
"required": [
"label",
"value"
]
}
}
},
"required": [
"name",
"type"
]
},
"supportedValueTypes": {
"type": "array",
"description": "The types of values that can be provided for this field",
"items": {
"type": "string",
"enum": [
"STATIC_VALUE",
"OBJECT_PROPERTY",
"OUTPUT_FROM_PREVIOUS_ACTION"
]
}
},
"isRequired": {
"type": "boolean",
"description": "Whether this field is required"
}
},
"required": [
"typeDefinition",
"supportedValueTypes"
],
"$schema": "https://json-structure.org/draft/2020-12/schema"
}