---
title: "Create transformer"
method: POST
path: "/api/transformers"
tags: ["Transformers"]
---

# Create transformer

`POST /api/transformers`

Creates a new data transformer with the provided configuration

## Request body

- CustomTransformerCommandDTO — Command Data Transfer Object for creating or updating a custom transformer.
  - `type` 'custom', required — The type of the transformer (always 'custom' for this interface).
  - `inputType` string, required — The input data type that the transformer accepts.
  - `outputType` string, required — The output data type that the transformer produces.
  - `name` string, required — The name of the custom transformer.
  - `description` string, required — A description of what the custom transformer does.
  - `customCode` string, required — The custom JavaScript code that implements the transformation logic.
  - `customManifest` OIBusObjectAttribute, required — Object-type attribute that groups related attributes. Used to create nested form structures.
    - `type` 'object', required — The type of this attribute (always "object").
    - `key` string, required — The unique key/identifier for this attribute.
    - `translationKey` string, required — Translation key for internationalization.
    - `validators` OIBusAttributeValidator[], required — Validators to apply to this attribute.
      - `type` 'REQUIRED' | 'MINIMUM' | 'MAXIMUM' | 'POSITIVE_INTEGER' | 'VALID_CRON' | 'PATTERN' | 'UNIQUE' | 'SINGLE_TRUE' | 'MQTT_TOPIC_OVERLAP' | 'PLATFORM', required — Type representing the possible validator types for OIBus form attributes.
      - `arguments` string[], required — Arguments for the validator. For example, for MINIMUM validator: ["10"] would set minimum value to 10.
    - `attributes` OIBusAttribute[], required — Child attributes contained within this object.
      - union — Union type representing all possible OIBus form attributes. Includes both displayable attributes and array/object containers.
        - OIBusObjectAttribute — recursive
        - OIBusStringAttribute — Text input attribute.
          - `type` 'string', required — The type of this attribute (always "string").
          - `key` string, required — The unique key/identifier for this attribute.
          - `translationKey` string, required — Translation key for internationalization.
          - `validators` OIBusAttributeValidator[], required — Validators to apply to this attribute.
            - `type` 'REQUIRED' | 'MINIMUM' | 'MAXIMUM' | 'POSITIVE_INTEGER' | 'VALID_CRON' | 'PATTERN' | 'UNIQUE' | 'SINGLE_TRUE' | 'MQTT_TOPIC_OVERLAP' | 'PLATFORM', required — Type representing the possible validator types for OIBus form attributes.
            - `arguments` string[], required — Arguments for the validator. For example, for MINIMUM validator: ["10"] would set minimum value to 10.
          - `displayProperties` OIBusAttributeDisplayProperties, required — Display properties for individual form attributes. Controls layout and visibility in form view.
            - `row` number, double, required — The row position in the form layout (1-based index).
            - `columns` number, double, required — The number of columns this attribute should span.
            - `displayInViewMode` boolean, required — Whether this attribute should be displayed in view mode.
          - `defaultValue` string, nullable, required — Default value for this attribute.
        - OIBusCodeAttribute — Code editor attribute for SQL or JSON content.
          - `type` 'code', required — The type of this attribute (always "code").
          - `key` string, required — The unique key/identifier for this attribute.
          - `translationKey` string, required — Translation key for internationalization.
          - `validators` OIBusAttributeValidator[], required — Validators to apply to this attribute.
            - `type` 'REQUIRED' | 'MINIMUM' | 'MAXIMUM' | 'POSITIVE_INTEGER' | 'VALID_CRON' | 'PATTERN' | 'UNIQUE' | 'SINGLE_TRUE' | 'MQTT_TOPIC_OVERLAP' | 'PLATFORM', required — Type representing the possible validator types for OIBus form attributes.
            - `arguments` string[], required — Arguments for the validator. For example, for MINIMUM validator: ["10"] would set minimum value to 10.
          - `displayProperties` OIBusAttributeDisplayProperties, required — Display properties for individual form attributes. Controls layout and visibility in form view.
            - `row` number, double, required — The row position in the form layout (1-based index).
            - `columns` number, double, required — The number of columns this attribute should span.
            - `displayInViewMode` boolean, required — Whether this attribute should be displayed in view mode.
          - `contentType` 'sql' | 'json', required — Type of content for syntax highlighting.
          - `defaultValue` string, nullable, required — Default value for this attribute.
        - OIBusStringSelectAttribute — Dropdown select attribute with predefined string options.
          - `type` 'string-select', required — The type of this attribute (always "string-select").
          - `key` string, required — The unique key/identifier for this attribute.
          - `translationKey` string, required — Translation key for internationalization.
          - `validators` OIBusAttributeValidator[], required — Validators to apply to this attribute.
            - `type` 'REQUIRED' | 'MINIMUM' | 'MAXIMUM' | 'POSITIVE_INTEGER' | 'VALID_CRON' | 'PATTERN' | 'UNIQUE' | 'SINGLE_TRUE' | 'MQTT_TOPIC_OVERLAP' | 'PLATFORM', required — Type representing the possible validator types for OIBus form attributes.
            - `arguments` string[], required — Arguments for the validator. For example, for MINIMUM validator: ["10"] would set minimum value to 10.
          - `displayProperties` OIBusAttributeDisplayProperties, required — Display properties for individual form attributes. Controls layout and visibility in form view.
            - `row` number, double, required — The row position in the form layout (1-based index).
            - `columns` number, double, required — The number of columns this attribute should span.
            - `displayInViewMode` boolean, required — Whether this attribute should be displayed in view mode.
          - `selectableValues` string[], required — Available options for selection.
          - `defaultValue` string, nullable, required — Default selected value.
        - OIBusSecretAttribute — Secret/password input attribute. Value is masked in the UI.
          - `type` 'secret', required — The type of this attribute (always "secret").
          - `key` string, required — The unique key/identifier for this attribute.
          - `translationKey` string, required — Translation key for internationalization.
          - `validators` OIBusAttributeValidator[], required — Validators to apply to this attribute.
            - `type` 'REQUIRED' | 'MINIMUM' | 'MAXIMUM' | 'POSITIVE_INTEGER' | 'VALID_CRON' | 'PATTERN' | 'UNIQUE' | 'SINGLE_TRUE' | 'MQTT_TOPIC_OVERLAP' | 'PLATFORM', required — Type representing the possible validator types for OIBus form attributes.
            - `arguments` string[], required — Arguments for the validator. For example, for MINIMUM validator: ["10"] would set minimum value to 10.
          - `displayProperties` OIBusAttributeDisplayProperties, required — Display properties for individual form attributes. Controls layout and visibility in form view.
            - `row` number, double, required — The row position in the form layout (1-based index).
            - `columns` number, double, required — The number of columns this attribute should span.
            - `displayInViewMode` boolean, required — Whether this attribute should be displayed in view mode.
        - OIBusNumberAttribute — Numeric input attribute.
          - `type` 'number', required — The type of this attribute (always "number").
          - `key` string, required — The unique key/identifier for this attribute.
          - `translationKey` string, required — Translation key for internationalization.
          - `validators` OIBusAttributeValidator[], required — Validators to apply to this attribute.
            - `type` 'REQUIRED' | 'MINIMUM' | 'MAXIMUM' | 'POSITIVE_INTEGER' | 'VALID_CRON' | 'PATTERN' | 'UNIQUE' | 'SINGLE_TRUE' | 'MQTT_TOPIC_OVERLAP' | 'PLATFORM', required — Type representing the possible validator types for OIBus form attributes.
            - `arguments` string[], required — Arguments for the validator. For example, for MINIMUM validator: ["10"] would set minimum value to 10.
          - `displayProperties` OIBusAttributeDisplayProperties, required — Display properties for individual form attributes. Controls layout and visibility in form view.
            - `row` number, double, required — The row position in the form layout (1-based index).
            - `columns` number, double, required — The number of columns this attribute should span.
            - `displayInViewMode` boolean, required — Whether this attribute should be displayed in view mode.
          - `defaultValue` number, double, nullable, required — Default value for this attribute.
          - `unit` string, nullable, required — Unit of measurement for this number (e.g., "ms", "kb"). Displayed next to the input field.
        - OIBusBooleanAttribute — Boolean (checkbox/toggle) attribute.
          - `type` 'boolean', required — The type of this attribute (always "boolean").
          - `key` string, required — The unique key/identifier for this attribute.
          - `translationKey` string, required — Translation key for internationalization.
          - `validators` OIBusAttributeValidator[], required — Validators to apply to this attribute.
            - `type` 'REQUIRED' | 'MINIMUM' | 'MAXIMUM' | 'POSITIVE_INTEGER' | 'VALID_CRON' | 'PATTERN' | 'UNIQUE' | 'SINGLE_TRUE' | 'MQTT_TOPIC_OVERLAP' | 'PLATFORM', required — Type representing the possible validator types for OIBus form attributes.
            - `arguments` string[], required — Arguments for the validator. For example, for MINIMUM validator: ["10"] would set minimum value to 10.
          - `displayProperties` OIBusAttributeDisplayProperties, required — Display properties for individual form attributes. Controls layout and visibility in form view.
            - `row` number, double, required — The row position in the form layout (1-based index).
            - `columns` number, double, required — The number of columns this attribute should span.
            - `displayInViewMode` boolean, required — Whether this attribute should be displayed in view mode.
          - `defaultValue` boolean, required — Default value for this attribute.
        - OIBusInstantAttribute — Date/time picker attribute.
          - `type` 'instant', required — The type of this attribute (always "instant").
          - `key` string, required — The unique key/identifier for this attribute.
          - `translationKey` string, required — Translation key for internationalization.
          - `validators` OIBusAttributeValidator[], required — Validators to apply to this attribute.
            - `type` 'REQUIRED' | 'MINIMUM' | 'MAXIMUM' | 'POSITIVE_INTEGER' | 'VALID_CRON' | 'PATTERN' | 'UNIQUE' | 'SINGLE_TRUE' | 'MQTT_TOPIC_OVERLAP' | 'PLATFORM', required — Type representing the possible validator types for OIBus form attributes.
            - `arguments` string[], required — Arguments for the validator. For example, for MINIMUM validator: ["10"] would set minimum value to 10.
          - `displayProperties` OIBusAttributeDisplayProperties, required — Display properties for individual form attributes. Controls layout and visibility in form view.
            - `row` number, double, required — The row position in the form layout (1-based index).
            - `columns` number, double, required — The number of columns this attribute should span.
            - `displayInViewMode` boolean, required — Whether this attribute should be displayed in view mode.
        - OIBusScanModeAttribute — Scan mode selection attribute. Used for configuring how often data should be collected.
          - `type` 'scan-mode', required — The type of this attribute (always "scan-mode").
          - `key` string, required — The unique key/identifier for this attribute.
          - `translationKey` string, required — Translation key for internationalization.
          - `validators` OIBusAttributeValidator[], required — Validators to apply to this attribute.
            - `type` 'REQUIRED' | 'MINIMUM' | 'MAXIMUM' | 'POSITIVE_INTEGER' | 'VALID_CRON' | 'PATTERN' | 'UNIQUE' | 'SINGLE_TRUE' | 'MQTT_TOPIC_OVERLAP' | 'PLATFORM', required — Type representing the possible validator types for OIBus form attributes.
            - `arguments` string[], required — Arguments for the validator. For example, for MINIMUM validator: ["10"] would set minimum value to 10.
          - `displayProperties` OIBusAttributeDisplayProperties, required — Display properties for individual form attributes. Controls layout and visibility in form view.
            - `row` number, double, required — The row position in the form layout (1-based index).
            - `columns` number, double, required — The number of columns this attribute should span.
            - `displayInViewMode` boolean, required — Whether this attribute should be displayed in view mode.
          - `acceptableType` 'POLL' | 'SUBSCRIPTION_AND_POLL' | 'SUBSCRIPTION', required — What types of scan modes are acceptable. POLL: Regular interval polling SUBSCRIPTION: Real-time subscription SUBSCRIPTION_AND_POLL: Both real-time and polling
        - OIBusCertificateAttribute — Certificate upload/selection attribute.
          - `type` 'certificate', required — The type of this attribute (always "certificate").
          - `key` string, required — The unique key/identifier for this attribute.
          - `translationKey` string, required — Translation key for internationalization.
          - `validators` OIBusAttributeValidator[], required — Validators to apply to this attribute.
            - `type` 'REQUIRED' | 'MINIMUM' | 'MAXIMUM' | 'POSITIVE_INTEGER' | 'VALID_CRON' | 'PATTERN' | 'UNIQUE' | 'SINGLE_TRUE' | 'MQTT_TOPIC_OVERLAP' | 'PLATFORM', required — Type representing the possible validator types for OIBus form attributes.
            - `arguments` string[], required — Arguments for the validator. For example, for MINIMUM validator: ["10"] would set minimum value to 10.
          - `displayProperties` OIBusAttributeDisplayProperties, required — Display properties for individual form attributes. Controls layout and visibility in form view.
            - `row` number, double, required — The row position in the form layout (1-based index).
            - `columns` number, double, required — The number of columns this attribute should span.
            - `displayInViewMode` boolean, required — Whether this attribute should be displayed in view mode.
        - OIBusTimezoneAttribute — Timezone selection attribute.
          - `type` 'timezone', required — The type of this attribute (always "timezone").
          - `key` string, required — The unique key/identifier for this attribute.
          - `translationKey` string, required — Translation key for internationalization.
          - `validators` OIBusAttributeValidator[], required — Validators to apply to this attribute.
            - `type` 'REQUIRED' | 'MINIMUM' | 'MAXIMUM' | 'POSITIVE_INTEGER' | 'VALID_CRON' | 'PATTERN' | 'UNIQUE' | 'SINGLE_TRUE' | 'MQTT_TOPIC_OVERLAP' | 'PLATFORM', required — Type representing the possible validator types for OIBus form attributes.
            - `arguments` string[], required — Arguments for the validator. For example, for MINIMUM validator: ["10"] would set minimum value to 10.
          - `displayProperties` OIBusAttributeDisplayProperties, required — Display properties for individual form attributes. Controls layout and visibility in form view.
            - `row` number, double, required — The row position in the form layout (1-based index).
            - `columns` number, double, required — The number of columns this attribute should span.
            - `displayInViewMode` boolean, required — Whether this attribute should be displayed in view mode.
          - `defaultValue` string, nullable, required — Default timezone value.
        - OIBusArrayAttribute — Array attribute for managing collections of objects. Used for repeatable sections in forms.
          - `type` 'array', required — The type of this attribute (always "array").
          - `key` string, required — The unique key/identifier for this attribute.
          - `translationKey` string, required — Translation key for internationalization.
          - `validators` OIBusAttributeValidator[], required — Validators to apply to this attribute.
            - `type` 'REQUIRED' | 'MINIMUM' | 'MAXIMUM' | 'POSITIVE_INTEGER' | 'VALID_CRON' | 'PATTERN' | 'UNIQUE' | 'SINGLE_TRUE' | 'MQTT_TOPIC_OVERLAP' | 'PLATFORM', required — Type representing the possible validator types for OIBus form attributes.
            - `arguments` string[], required — Arguments for the validator. For example, for MINIMUM validator: ["10"] would set minimum value to 10.
          - `paginate` boolean, required — Whether to paginate the array elements.
          - `numberOfElementPerPage` number, double, required — Number of elements to display per page when paginated.
          - `rootAttribute` OIBusObjectAttribute, required — recursive
    - `enablingConditions` OIBusEnablingCondition[], required — Conditions that determine when this object should be enabled.
      - `targetPathFromRoot` string, required — Path to the attribute that should be enabled/disabled.
      - `referralPathFromRoot` string, required — Path to the attribute whose value determines the enabling condition.
      - `values` union[], required — Values of the referral attribute that will enable the target attribute.
        - union
          - string
          - number, double
          - boolean
      - `operator` 'EQUALS' | 'CONTAINS' | 'NOT_EQUAL' — Operator to use for the condition. EQUALS: The referral attribute value must be equal to one of the values. CONTAINS: The referral attribute value must contain one of the values (string only).
    - `displayProperties` OIBusObjectDisplayProperties, required — Display properties for object-type form attributes. Controls visibility and styling of object containers.
      - `visible` boolean, required — Whether this object should be visible in the form.
      - `wrapInBox` boolean, required — Whether this object should be wrapped in a visual box/container.
  - `language` string, required
  - `timeout` number, double, required — The maximum execution time for the custom code in milliseconds.

## Response `201`

Transformer created successfully

- CustomTransformerDTO — Data Transfer Object for a custom transformer. Extends the base transformer with custom-specific properties.
  - `id` string, required — The unique identifier of the transformer.
  - `type` 'custom', required — The type of the transformer (always 'custom' for this interface).
  - `inputType` string, required
  - `outputType` string, required
  - `manifest` OIBusObjectAttribute, required — Object-type attribute that groups related attributes. Used to create nested form structures.
    - `type` 'object', required — The type of this attribute (always "object").
    - `key` string, required — The unique key/identifier for this attribute.
    - `translationKey` string, required — Translation key for internationalization.
    - `validators` OIBusAttributeValidator[], required — Validators to apply to this attribute.
      - `type` 'REQUIRED' | 'MINIMUM' | 'MAXIMUM' | 'POSITIVE_INTEGER' | 'VALID_CRON' | 'PATTERN' | 'UNIQUE' | 'SINGLE_TRUE' | 'MQTT_TOPIC_OVERLAP' | 'PLATFORM', required — Type representing the possible validator types for OIBus form attributes.
      - `arguments` string[], required — Arguments for the validator. For example, for MINIMUM validator: ["10"] would set minimum value to 10.
    - `attributes` OIBusAttribute[], required — Child attributes contained within this object.
      - union — Union type representing all possible OIBus form attributes. Includes both displayable attributes and array/object containers.
        - OIBusObjectAttribute — recursive
        - OIBusStringAttribute — Text input attribute.
          - `type` 'string', required — The type of this attribute (always "string").
          - `key` string, required — The unique key/identifier for this attribute.
          - `translationKey` string, required — Translation key for internationalization.
          - `validators` OIBusAttributeValidator[], required — Validators to apply to this attribute.
            - `type` 'REQUIRED' | 'MINIMUM' | 'MAXIMUM' | 'POSITIVE_INTEGER' | 'VALID_CRON' | 'PATTERN' | 'UNIQUE' | 'SINGLE_TRUE' | 'MQTT_TOPIC_OVERLAP' | 'PLATFORM', required — Type representing the possible validator types for OIBus form attributes.
            - `arguments` string[], required — Arguments for the validator. For example, for MINIMUM validator: ["10"] would set minimum value to 10.
          - `displayProperties` OIBusAttributeDisplayProperties, required — Display properties for individual form attributes. Controls layout and visibility in form view.
            - `row` number, double, required — The row position in the form layout (1-based index).
            - `columns` number, double, required — The number of columns this attribute should span.
            - `displayInViewMode` boolean, required — Whether this attribute should be displayed in view mode.
          - `defaultValue` string, nullable, required — Default value for this attribute.
        - OIBusCodeAttribute — Code editor attribute for SQL or JSON content.
          - `type` 'code', required — The type of this attribute (always "code").
          - `key` string, required — The unique key/identifier for this attribute.
          - `translationKey` string, required — Translation key for internationalization.
          - `validators` OIBusAttributeValidator[], required — Validators to apply to this attribute.
            - `type` 'REQUIRED' | 'MINIMUM' | 'MAXIMUM' | 'POSITIVE_INTEGER' | 'VALID_CRON' | 'PATTERN' | 'UNIQUE' | 'SINGLE_TRUE' | 'MQTT_TOPIC_OVERLAP' | 'PLATFORM', required — Type representing the possible validator types for OIBus form attributes.
            - `arguments` string[], required — Arguments for the validator. For example, for MINIMUM validator: ["10"] would set minimum value to 10.
          - `displayProperties` OIBusAttributeDisplayProperties, required — Display properties for individual form attributes. Controls layout and visibility in form view.
            - `row` number, double, required — The row position in the form layout (1-based index).
            - `columns` number, double, required — The number of columns this attribute should span.
            - `displayInViewMode` boolean, required — Whether this attribute should be displayed in view mode.
          - `contentType` 'sql' | 'json', required — Type of content for syntax highlighting.
          - `defaultValue` string, nullable, required — Default value for this attribute.
        - OIBusStringSelectAttribute — Dropdown select attribute with predefined string options.
          - `type` 'string-select', required — The type of this attribute (always "string-select").
          - `key` string, required — The unique key/identifier for this attribute.
          - `translationKey` string, required — Translation key for internationalization.
          - `validators` OIBusAttributeValidator[], required — Validators to apply to this attribute.
            - `type` 'REQUIRED' | 'MINIMUM' | 'MAXIMUM' | 'POSITIVE_INTEGER' | 'VALID_CRON' | 'PATTERN' | 'UNIQUE' | 'SINGLE_TRUE' | 'MQTT_TOPIC_OVERLAP' | 'PLATFORM', required — Type representing the possible validator types for OIBus form attributes.
            - `arguments` string[], required — Arguments for the validator. For example, for MINIMUM validator: ["10"] would set minimum value to 10.
          - `displayProperties` OIBusAttributeDisplayProperties, required — Display properties for individual form attributes. Controls layout and visibility in form view.
            - `row` number, double, required — The row position in the form layout (1-based index).
            - `columns` number, double, required — The number of columns this attribute should span.
            - `displayInViewMode` boolean, required — Whether this attribute should be displayed in view mode.
          - `selectableValues` string[], required — Available options for selection.
          - `defaultValue` string, nullable, required — Default selected value.
        - OIBusSecretAttribute — Secret/password input attribute. Value is masked in the UI.
          - `type` 'secret', required — The type of this attribute (always "secret").
          - `key` string, required — The unique key/identifier for this attribute.
          - `translationKey` string, required — Translation key for internationalization.
          - `validators` OIBusAttributeValidator[], required — Validators to apply to this attribute.
            - `type` 'REQUIRED' | 'MINIMUM' | 'MAXIMUM' | 'POSITIVE_INTEGER' | 'VALID_CRON' | 'PATTERN' | 'UNIQUE' | 'SINGLE_TRUE' | 'MQTT_TOPIC_OVERLAP' | 'PLATFORM', required — Type representing the possible validator types for OIBus form attributes.
            - `arguments` string[], required — Arguments for the validator. For example, for MINIMUM validator: ["10"] would set minimum value to 10.
          - `displayProperties` OIBusAttributeDisplayProperties, required — Display properties for individual form attributes. Controls layout and visibility in form view.
            - `row` number, double, required — The row position in the form layout (1-based index).
            - `columns` number, double, required — The number of columns this attribute should span.
            - `displayInViewMode` boolean, required — Whether this attribute should be displayed in view mode.
        - OIBusNumberAttribute — Numeric input attribute.
          - `type` 'number', required — The type of this attribute (always "number").
          - `key` string, required — The unique key/identifier for this attribute.
          - `translationKey` string, required — Translation key for internationalization.
          - `validators` OIBusAttributeValidator[], required — Validators to apply to this attribute.
            - `type` 'REQUIRED' | 'MINIMUM' | 'MAXIMUM' | 'POSITIVE_INTEGER' | 'VALID_CRON' | 'PATTERN' | 'UNIQUE' | 'SINGLE_TRUE' | 'MQTT_TOPIC_OVERLAP' | 'PLATFORM', required — Type representing the possible validator types for OIBus form attributes.
            - `arguments` string[], required — Arguments for the validator. For example, for MINIMUM validator: ["10"] would set minimum value to 10.
          - `displayProperties` OIBusAttributeDisplayProperties, required — Display properties for individual form attributes. Controls layout and visibility in form view.
            - `row` number, double, required — The row position in the form layout (1-based index).
            - `columns` number, double, required — The number of columns this attribute should span.
            - `displayInViewMode` boolean, required — Whether this attribute should be displayed in view mode.
          - `defaultValue` number, double, nullable, required — Default value for this attribute.
          - `unit` string, nullable, required — Unit of measurement for this number (e.g., "ms", "kb"). Displayed next to the input field.
        - OIBusBooleanAttribute — Boolean (checkbox/toggle) attribute.
          - `type` 'boolean', required — The type of this attribute (always "boolean").
          - `key` string, required — The unique key/identifier for this attribute.
          - `translationKey` string, required — Translation key for internationalization.
          - `validators` OIBusAttributeValidator[], required — Validators to apply to this attribute.
            - `type` 'REQUIRED' | 'MINIMUM' | 'MAXIMUM' | 'POSITIVE_INTEGER' | 'VALID_CRON' | 'PATTERN' | 'UNIQUE' | 'SINGLE_TRUE' | 'MQTT_TOPIC_OVERLAP' | 'PLATFORM', required — Type representing the possible validator types for OIBus form attributes.
            - `arguments` string[], required — Arguments for the validator. For example, for MINIMUM validator: ["10"] would set minimum value to 10.
          - `displayProperties` OIBusAttributeDisplayProperties, required — Display properties for individual form attributes. Controls layout and visibility in form view.
            - `row` number, double, required — The row position in the form layout (1-based index).
            - `columns` number, double, required — The number of columns this attribute should span.
            - `displayInViewMode` boolean, required — Whether this attribute should be displayed in view mode.
          - `defaultValue` boolean, required — Default value for this attribute.
        - OIBusInstantAttribute — Date/time picker attribute.
          - `type` 'instant', required — The type of this attribute (always "instant").
          - `key` string, required — The unique key/identifier for this attribute.
          - `translationKey` string, required — Translation key for internationalization.
          - `validators` OIBusAttributeValidator[], required — Validators to apply to this attribute.
            - `type` 'REQUIRED' | 'MINIMUM' | 'MAXIMUM' | 'POSITIVE_INTEGER' | 'VALID_CRON' | 'PATTERN' | 'UNIQUE' | 'SINGLE_TRUE' | 'MQTT_TOPIC_OVERLAP' | 'PLATFORM', required — Type representing the possible validator types for OIBus form attributes.
            - `arguments` string[], required — Arguments for the validator. For example, for MINIMUM validator: ["10"] would set minimum value to 10.
          - `displayProperties` OIBusAttributeDisplayProperties, required — Display properties for individual form attributes. Controls layout and visibility in form view.
            - `row` number, double, required — The row position in the form layout (1-based index).
            - `columns` number, double, required — The number of columns this attribute should span.
            - `displayInViewMode` boolean, required — Whether this attribute should be displayed in view mode.
        - OIBusScanModeAttribute — Scan mode selection attribute. Used for configuring how often data should be collected.
          - `type` 'scan-mode', required — The type of this attribute (always "scan-mode").
          - `key` string, required — The unique key/identifier for this attribute.
          - `translationKey` string, required — Translation key for internationalization.
          - `validators` OIBusAttributeValidator[], required — Validators to apply to this attribute.
            - `type` 'REQUIRED' | 'MINIMUM' | 'MAXIMUM' | 'POSITIVE_INTEGER' | 'VALID_CRON' | 'PATTERN' | 'UNIQUE' | 'SINGLE_TRUE' | 'MQTT_TOPIC_OVERLAP' | 'PLATFORM', required — Type representing the possible validator types for OIBus form attributes.
            - `arguments` string[], required — Arguments for the validator. For example, for MINIMUM validator: ["10"] would set minimum value to 10.
          - `displayProperties` OIBusAttributeDisplayProperties, required — Display properties for individual form attributes. Controls layout and visibility in form view.
            - `row` number, double, required — The row position in the form layout (1-based index).
            - `columns` number, double, required — The number of columns this attribute should span.
            - `displayInViewMode` boolean, required — Whether this attribute should be displayed in view mode.
          - `acceptableType` 'POLL' | 'SUBSCRIPTION_AND_POLL' | 'SUBSCRIPTION', required — What types of scan modes are acceptable. POLL: Regular interval polling SUBSCRIPTION: Real-time subscription SUBSCRIPTION_AND_POLL: Both real-time and polling
        - OIBusCertificateAttribute — Certificate upload/selection attribute.
          - `type` 'certificate', required — The type of this attribute (always "certificate").
          - `key` string, required — The unique key/identifier for this attribute.
          - `translationKey` string, required — Translation key for internationalization.
          - `validators` OIBusAttributeValidator[], required — Validators to apply to this attribute.
            - `type` 'REQUIRED' | 'MINIMUM' | 'MAXIMUM' | 'POSITIVE_INTEGER' | 'VALID_CRON' | 'PATTERN' | 'UNIQUE' | 'SINGLE_TRUE' | 'MQTT_TOPIC_OVERLAP' | 'PLATFORM', required — Type representing the possible validator types for OIBus form attributes.
            - `arguments` string[], required — Arguments for the validator. For example, for MINIMUM validator: ["10"] would set minimum value to 10.
          - `displayProperties` OIBusAttributeDisplayProperties, required — Display properties for individual form attributes. Controls layout and visibility in form view.
            - `row` number, double, required — The row position in the form layout (1-based index).
            - `columns` number, double, required — The number of columns this attribute should span.
            - `displayInViewMode` boolean, required — Whether this attribute should be displayed in view mode.
        - OIBusTimezoneAttribute — Timezone selection attribute.
          - `type` 'timezone', required — The type of this attribute (always "timezone").
          - `key` string, required — The unique key/identifier for this attribute.
          - `translationKey` string, required — Translation key for internationalization.
          - `validators` OIBusAttributeValidator[], required — Validators to apply to this attribute.
            - `type` 'REQUIRED' | 'MINIMUM' | 'MAXIMUM' | 'POSITIVE_INTEGER' | 'VALID_CRON' | 'PATTERN' | 'UNIQUE' | 'SINGLE_TRUE' | 'MQTT_TOPIC_OVERLAP' | 'PLATFORM', required — Type representing the possible validator types for OIBus form attributes.
            - `arguments` string[], required — Arguments for the validator. For example, for MINIMUM validator: ["10"] would set minimum value to 10.
          - `displayProperties` OIBusAttributeDisplayProperties, required — Display properties for individual form attributes. Controls layout and visibility in form view.
            - `row` number, double, required — The row position in the form layout (1-based index).
            - `columns` number, double, required — The number of columns this attribute should span.
            - `displayInViewMode` boolean, required — Whether this attribute should be displayed in view mode.
          - `defaultValue` string, nullable, required — Default timezone value.
        - OIBusArrayAttribute — Array attribute for managing collections of objects. Used for repeatable sections in forms.
          - `type` 'array', required — The type of this attribute (always "array").
          - `key` string, required — The unique key/identifier for this attribute.
          - `translationKey` string, required — Translation key for internationalization.
          - `validators` OIBusAttributeValidator[], required — Validators to apply to this attribute.
            - `type` 'REQUIRED' | 'MINIMUM' | 'MAXIMUM' | 'POSITIVE_INTEGER' | 'VALID_CRON' | 'PATTERN' | 'UNIQUE' | 'SINGLE_TRUE' | 'MQTT_TOPIC_OVERLAP' | 'PLATFORM', required — Type representing the possible validator types for OIBus form attributes.
            - `arguments` string[], required — Arguments for the validator. For example, for MINIMUM validator: ["10"] would set minimum value to 10.
          - `paginate` boolean, required — Whether to paginate the array elements.
          - `numberOfElementPerPage` number, double, required — Number of elements to display per page when paginated.
          - `rootAttribute` OIBusObjectAttribute, required — recursive
    - `enablingConditions` OIBusEnablingCondition[], required — Conditions that determine when this object should be enabled.
      - `targetPathFromRoot` string, required — Path to the attribute that should be enabled/disabled.
      - `referralPathFromRoot` string, required — Path to the attribute whose value determines the enabling condition.
      - `values` union[], required — Values of the referral attribute that will enable the target attribute.
        - union
          - string
          - number, double
          - boolean
      - `operator` 'EQUALS' | 'CONTAINS' | 'NOT_EQUAL' — Operator to use for the condition. EQUALS: The referral attribute value must be equal to one of the values. CONTAINS: The referral attribute value must contain one of the values (string only).
    - `displayProperties` OIBusObjectDisplayProperties, required — Display properties for object-type form attributes. Controls visibility and styling of object containers.
      - `visible` boolean, required — Whether this object should be visible in the form.
      - `wrapInBox` boolean, required — Whether this object should be wrapped in a visual box/container.
  - `name` string, required — The name of the custom transformer.
  - `description` string, required — A description of what the custom transformer does.
  - `customCode` string, required — The custom JavaScript code that implements the transformation logic.
  - `language` string, required
  - `timeout` number, double, required — The maximum execution time for the custom code in milliseconds.
  - `createdBy` UserInfo, required — Represents the user who performed an action, with a computed display name.
    - `id` string, required — The unique identifier of the user.
    - `friendlyName` string, required — A human-readable display name for the user. "OIAnalytics" for the oianalytics system user, "Admin" for the admin login, or "Firstname Lastname (login)" for regular users.
  - `updatedBy` UserInfo, required — Represents the user who performed an action, with a computed display name.
    - `id` string, required — The unique identifier of the user.
    - `friendlyName` string, required — A human-readable display name for the user. "OIAnalytics" for the oianalytics system user, "Admin" for the admin login, or "Firstname Lastname (login)" for regular users.
  - `createdAt` string, required — Represents an instant in time as an ISO 8601 string.
  - `updatedAt` string, required — Represents an instant in time as an ISO 8601 string.

---

[API](https://skmtc.net/optimistiksas/apis/oibus-api.md) · [All operations](https://skmtc.net/optimistiksas/apis/oibus-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/optimistiksas/oibus-api/versions/743d1b62f042/schema)
