> ## Documentation Index
> Fetch the complete documentation index at: https://docs.sqwish.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Move from Jev

> Translate an existing request, then adopt native decisions deliberately.

Use the free translator to inspect how a Jev-shaped request maps to D1:

```bash theme={null}
curl --fail-with-body https://console.sqwish.ai/v1/systemone/translate \
  -H 'Content-Type: application/json' \
  -d '{"model":"jev-latest","state":"Please refund the duplicate charge.",
    "questions":{"refund":{"type":"noul","instructions":"Is a refund requested?"}}}'
```

The response contains `request`, ready to send to `/v1/decide` with your API key, and `notes` explaining the translation. This operation does not run inference.

## Keep the request shape initially

Send the same original body to authenticated `POST /v1/systemone` to receive the Jev-compatible answer shape. `answers.refund.noul` is the yes probability. `choice` returns an outcome with its distribution; `score` returns an expected level, legend and distribution.

Jev model aliases resolve to the D1 base model; inspect the response's actual `model`. Compatibility of request and response shape does not imply identical model behavior, accuracy or latency.

## Adopt the native shape

| Jev | Native D1 |
| - | - |
| `state` | `context` |
| `questions` keyed by ID | `decisions` with an `id` on each item |
| `instructions` | `question` |
| `noul` | `binary` with `yes` / `no` |
| `choice` criteria | `single` outcomes |
| `score` criteria | Ordered `ordinal` outcomes and rubric |

Native decisions also support action policies and feedback storage. Add them explicitly after evaluating the translated request. Jev's `confidence` is not the same field as native `p_top`, and neither establishes calibrated correctness. Preserve outcome order and compare results on your own labels.

Unsupported Jev fields are rejected with validation details. Do not assume that every option from another provider's API transfers. Sending `questions` to `/v1/decide`, or `decisions` to `/v1/systemone`, returns a request-shape error with a pointer to the correct route.

Both inference endpoints have uncertain outcomes after a lost response. Neither supports idempotent result replay. Read [API behavior](/api) before adding retries.
