Skip to main content

Object Editor

The Object Editor is a visual tree-based editor for complex request bodies. Instead of editing raw JSON or XML, you navigate a property tree that reflects the schema of the imported API.

:::info Screenshot needed — light/dark 📸 object-editor-tree-light.png and object-editor-tree-dark.png — Object Editor showing nested properties expanded :::

When to Use​

  • When working with deeply nested JSON or SOAP XML bodies
  • When you want to avoid manual serialization errors
  • When the object has many optional fields and you want to set only specific ones

Using the Object Editor​

  1. In the Request tab, click Edit in Object Editor (or select the body tab with the tree icon).
  2. The editor shows a tree of property names and types derived from the imported schema.
  3. Click a property to expand it and enter a value.
  4. Set array items by clicking the + (Add Item) button next to array nodes.
  5. A value you leave as null is omitted from the serialized output. What an empty value means ("", an empty list, 0) depends on the protocol and on whether the field tracks presence — for protobuf bodies see the table in Testing gRPC Services →.
  6. Click Apply to update the request body.

Schema Markers on a Property​

When the imported API says something about a field beyond its type, the property carries a small badge and the tooltip spells it out. Every marker is informational — none of them stops you sending a value: this is a testing tool, and provoking the server's error path is a legitimate thing to do.

MarkerWhat the tooltip saysWhere the flag comes from
RequiredRequired — the API expects this field. You may set it to null to test server error handling.An OpenAPI required list, a protobuf required field, a GraphQL non-null type, or the Google-style option [(google.api.field_behavior) = REQUIRED] on a gRPC field.
Read-onlyRead-only — the schema says the server sets this field. It is still sent when you fill in a value.OpenAPI readOnly: true, or OUTPUT_ONLY / IMMUTABLE in a gRPC field's field_behavior. Nothing is filtered out of the request on that basis.
Write-onlyWrite-only — the schema says this field belongs in requests. A value the server returns is still shown.OpenAPI writeOnly: true, or INPUT_ONLY in a gRPC field's field_behavior. The mirror case.
DeprecatedDeprecated — this property is obsolete and may be removed in a future API version.An OpenAPI deprecated: true, a GraphQL @deprecated, or a protobuf deprecated = true on the field. The value still works and is still sent.
DiscriminatorDiscriminator — this property selects the concrete subtype for polymorphic deserialization.A union/one-of variant selector in the schema.

Numeric and length limits appear in the same tooltip as plain notes (Minimum: 1, Max length: 64, Pattern: …, Items must be unique.). Nothing is checked while you type — if a value outside a limit is something you want a test to fail on, add an assertion for it.

The badge follows the field, including when what the schema retired is the type the field refers to: a property typed with a deprecated message or enum carries the badge too, because that row is where you would still send one. Two cases stay unbadged — a deprecated class or enum that nothing references, and a single value of an enum, which is chosen from a dropdown rather than listed as a node.

In the text body editor, the same flags appear in the completion list: a deprecated property is offered with a deprecated hint rather than being hidden.

Filtering the Tree​

Press Ctrl+Shift+F to show a filter box at the top of the tree, then type to narrow the tree to matching node names. Matching nodes and their ancestor chains are shown automatically; everything else is hidden. Press Ctrl+Shift+F again with an empty filter, or press Esc, to close the filter and reset the tree.

Keyboard Shortcuts​

ShortcutAction
Ctrl+CCopy the selected node's value (or its path) to the clipboard
Ctrl+Shift+EExpand all nodes
Ctrl+Shift+CCollapse all nodes
DeleteRemove the selected array item (root items cannot be deleted)
Ctrl+Shift+FShow/hide the filter box
EscClose the filter box and reset the view

Supported Types​

  • Primitive types: string, int, decimal, bool, DateTime
  • Complex types (nested objects)
  • Collections (arrays/lists)
  • Enumerations (rendered as dropdown selectors)

Tips​

  • Press Ctrl+Z to undo changes inside the editor.
  • Right-click a node to Reset to default or Set to null.
  • The editor respects required vs optional fields from the schema.

Next Steps​