Skip to main content
Each REST operation carries a parameter mapping: the rules that turn the JSON a model passes into a URL, headers, and a body. OpenAPI import generates these; this page is for reading and adjusting them.

The four locations

Reading a field from the input

Every mapping names a source with from_field, which takes one of two shapes:
A string reads one top-level key. An array walks nested objects, one element per level.
Dot notation is not a path. "from_field": "user.profile.id" looks for a top-level key literally named user.profile.id, and fails when it is not there. Use the array form for nested values.

Validation

Path, query, and header mappings each accept validation constraints, applied before the request is built: A validation failure fails the tool call rather than sending a malformed request.
Validation checks types; it does not coerce them. A string "10" where param_type is integer fails — it is not converted. There is also no default-value field: an absent optional parameter is simply omitted.

Body strategies

body_config has a strategy and an optional content_type (default application/json). The strategy is a tagged object: Whole input as the body:
One field as the body:
Rename fields on the way through:
mapped is what you want when the API’s field names are worse than the ones you want the model to see.

A complete example

POST /repos/{owner}/{repo}/issues:
Authentication is not a header mapping. It belongs on the connector’s auth configuration, so the credential stays encrypted and out of the model’s context — see Authentication.

Next