Field-Level Overrides
Configure exceptions to default SOAP-to-REST data conversion rules. Override date/time, numeric, boolean, null, and other formats for specific fields.
Overview
Field-level overrides provide a mechanism to configure conversion behavior for a specific field within a single API operation. While the default mapping is deterministic and handles most fields automatically, overrides are used for exceptions where a single field must behave differently from the system, service, or operation-level settings.
Overrides are the most specific tier in the conversion option hierarchy, allowing for fine-grained control without altering the broader conversion logic. They are configured through the platform's user interface, not by writing mediation scripts.
The Conversion Option Hierarchy
Settings are resolved from the most general to the most specific. A field-level override takes precedence over any conflicting setting at a higher level.
flowchart LR
A[System Default] --> B[Per-Service Setting]
B --> C[Per-Operation Setting]
C --> D(Per-Field Override)
style D fill:#f9f,stroke:#333,stroke-width:2pxHow It Works
A field-level override modifies two aspects of the API:
- Runtime Conversion: It changes how the data for that specific field is transformed between the SOAP backend and the REST client at runtime.
- Generated OpenAPI Specification: It updates the corresponding field's definition in the generated OpenAPI v3 schema to match the runtime behavior.
This ensures that the published API contract accurately reflects the conversion logic. For example:
- Changing Field-name casing to
snake_caserenames the JSON property in the OpenAPI schema. - Adding a Validation regex emits a
patternconstraint for that property. - Setting Integer range bounds adds or removes
minimumandmaximumvalidation keywords in the schema.
IMPORTANT
Editing a mapping by adding, changing, or removing a field override creates a new, immutable revision of the mapping. The currently active mapping is not modified in place. This versioning allows you to test changes in isolation and roll back to a previous known-good configuration if needed.
Authoring a Field-Level Override
API publishers can add or modify field overrides by following these steps in the UI:
- Navigate to Services, select the target service, and open the Mapping tab.
- Select the operation you wish to modify. The request and response contract trees will be displayed.
- Locate the specific leaf field in the tree that requires an override.
- Open the field's override chip and configure the desired conversion option (e.g., change a date format to
epoch-millis). - Save the mapping. This action creates a new mapping revision.
- Use the SOAP application test or REST test to verify that the override behaves as expected before activating the new revision.
Available Field-Level Overrides
Overrides are available for leaf-level conversion options. The following settings can be configured on a per-field basis:
- Date / time: Includes format, custom pattern, timezone, and local timezone settings.
- Numeric handling
- Boolean handling
- Null / empty handling
- Array collapse
- Whitespace handling
- Binary encoding: Includes the data-URL MIME type.
- Duration
- Required handling
- Field-name casing
xsi:typediscriminator: Includes the discriminator field name.- Integer range bounds: Affects only the generated OpenAPI specification.
- Validation regexes: A per-field regular expression pattern that is enforced based on the active validation mode.
Options Not Available at the Field Level
Body-level options affect the entire request or response payload and therefore cannot be attached to a single field. These options must be configured at the system or operation level:
- Response envelope wrapping
- Error / fault shape
- JSON field ordering
- SOAP header propagation
- Upstream failure status code
- Request / response validation mode (set per service)
For details on which tiers each option can be configured at, see the conversion options reference.
Direction-Aware Overrides
While most field-level overrides apply a single setting for response-side conversion, some options are bidirectional, allowing for separate configurations for requests and responses.
The following options are direction-aware at the field level:
- Boolean handling
- Null / empty handling
- Validation regexes
For these options, the system consults both the request-side and response-side override values at runtime. If you need to apply a directional split to an option that is not natively bidirectional at the field level, you must configure it at the operation tier instead.
Verification and Rollback
Because every change to a mapping creates a new, immutable revision, you can manage changes safely.
- Verification: Always use the built-in test tools to confirm that a new mapping revision with field overrides behaves correctly before activating it for consumer traffic.
- Rollback: If a new revision introduces an issue, you can revert to a previous, known-good mapping version. For more details, see Publish & version a service.
See Also
- Conversion Options Reference
- Validation Modes
- Generate & Review the OpenAPI
- Publish & Version a Service
