Keboola · Schema
ComponentArrayRead
Component array read model that represents a component with its configuration and metadata
Data PlatformETLELTData PipelinesData StorageTransformationsOrchestrationData OperationsCloud DataSnowflakeBigQuery
Properties
| Name | Type | Description |
|---|---|---|
| id | string | Unique identifier of the component |
| type | string | Type of the component |
| name | string | Display name of the component |
| description | string | Short description of the component |
| longDescription | string | Detailed description of the component |
| version | integer | Version number of the component |
| complexity | string | Complexity level of the component |
| categories | array | List of component categories |
| hasUI | boolean | Whether the component has a user interface |
| hasRun | boolean | Whether the component can be run |
| ico32 | string | 32x32 icon URL |
| ico64 | string | 64x64 icon URL |
| ico128 | string | 128x128 icon URL |
| data | object | Additional component data |
| flags | array | List of component flags |
| configurationSchema | object | JSON schema of the component configuration |
| configurationRowSchema | object | JSON schema of the component configuration row |
| emptyConfiguration | object | Default empty configuration |
| emptyConfigurationRow | object | Default empty configuration row |
| createConfigurationRowSchema | object | JSON schema for creating a new configuration row |
| uiOptions | object | UI customization options |
| configurationDescription | string | Description of the configuration structure |
| features | array | List of component features |
| expiredOn | string | Date when the component expires |
| uri | string | URI of the component |
| documentationUrl | string | URL to the component documentation |
| dataTypesConfiguration | string | Configuration for data types |
| processorConfiguration | string | Configuration for processor |
JSON Schema
{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "ComponentArrayRead",
"description": "Component array read model that represents a component with its configuration and metadata",
"required": [
"id",
"type",
"name",
"description",
"version",
"categories",
"hasUI",
"hasRun",
"flags",
"features",
"documentationUrl"
],
"properties": {
"id": {
"description": "Unique identifier of the component",
"type": "string",
"example": "keboola.ex-db-mysql"
},
"type": {
"description": "Type of the component",
"type": "string",
"enum": [
"extractor",
"writer",
"application",
"transformation"
]
},
"name": {
"description": "Display name of the component",
"type": "string",
"example": "MySQL Database Extractor"
},
"description": {
"description": "Short description of the component",
"type": "string",
"example": "Extracts data from MySQL database"
},
"longDescription": {
"description": "Detailed description of the component",
"type": "string",
"nullable": true
},
"version": {
"description": "Version number of the component",
"type": "integer",
"example": 2
},
"complexity": {
"description": "Complexity level of the component",
"type": "string",
"nullable": true,
"enum": [
"low",
"medium",
"high"
]
},
"categories": {
"description": "List of component categories",
"type": "array",
"items": {
"type": "string"
},
"example": [
"extractor",
"database"
]
},
"hasUI": {
"description": "Whether the component has a user interface",
"type": "boolean"
},
"hasRun": {
"description": "Whether the component can be run",
"type": "boolean"
},
"ico32": {
"description": "32x32 icon URL",
"type": "string",
"nullable": true
},
"ico64": {
"description": "64x64 icon URL",
"type": "string",
"nullable": true
},
"ico128": {
"description": "128x128 icon URL",
"type": "string",
"nullable": true
},
"data": {
"description": "Additional component data",
"type": "object",
"nullable": true,
"additionalProperties": true
},
"flags": {
"description": "List of component flags",
"type": "array",
"items": {
"type": "string"
}
},
"configurationSchema": {
"description": "JSON schema of the component configuration",
"type": "object",
"nullable": true
},
"configurationRowSchema": {
"description": "JSON schema of the component configuration row",
"type": "object",
"nullable": true
},
"emptyConfiguration": {
"description": "Default empty configuration",
"type": "object",
"nullable": true
},
"emptyConfigurationRow": {
"description": "Default empty configuration row",
"type": "object",
"nullable": true
},
"createConfigurationRowSchema": {
"description": "JSON schema for creating a new configuration row",
"type": "object",
"nullable": true
},
"uiOptions": {
"description": "UI customization options",
"type": "object",
"nullable": true
},
"configurationDescription": {
"description": "Description of the configuration structure",
"type": "string",
"nullable": true
},
"features": {
"description": "List of component features",
"type": "array",
"items": {
"type": "string"
}
},
"expiredOn": {
"description": "Date when the component expires",
"type": "string",
"format": "date-time",
"nullable": true
},
"uri": {
"description": "URI of the component",
"type": "string",
"example": "https://connection.keboola.com/v2/storage/components/keboola.ex-db-mysql",
"nullable": true
},
"documentationUrl": {
"description": "URL to the component documentation",
"type": "string"
},
"dataTypesConfiguration": {
"description": "Configuration for data types",
"type": "string",
"nullable": true
},
"processorConfiguration": {
"description": "Configuration for processor",
"type": "string",
"nullable": true
}
},
"type": "object"
}