This walkthrough follows the official quick start. It uses a support message because the expected judgment is easy to inspect. You need a TypeSafe account and an API key from the dashboard. Keep the key in an environment variable, never in a page or committed source file.
1. Test in the Playground
Open the Playground. Paste a message such as: “I have tried to connect my payment account for three days and am losing sales.” Add a Noul question asking whether the message conveys urgency. Change the message to a calm request and then to an ambiguous one. Inspect how the answer changes before writing application code.
2. Make one HTTP request
Set TYPESAFE_API_KEY in your shell, then send a request to the documented endpoint:
curl -X POST https://api.typesafe.ai/v1/systemone \
-H "Authorization: Bearer $TYPESAFE_API_KEY" \
-H "Content-Type: application/json" \
-d @- <<'EOF'
{"model":"jev-latest","state":"I have tried to connect my payment account for three days and am losing sales.","questions":{"urgent":{"type":"noul","instructions":"Does this message express urgency?"}}}
EOF
The request contains the state, model name, and a map of questions. Read the returned value for urgent before choosing any action. The API reference is the authority for current request and response fields. jev-latest follows the provider’s current version; pin a version if reproducibility matters to your application.
3. Add a decision in code
Start with a visible review path: show the answer to a person instead of immediately changing account state. Save a small set of representative inputs and expected outcomes. Only after checking those examples should you add a threshold and an automated branch. A model response should never replace your usual API error handling or authorization checks.
Common mistakes
- Asking for free-form prose: Jev returns typed answers, not drafted replies.
- Treating a probability as proof that a statement is true.
- Putting secrets or private data into examples or logs without a need.
- Asking the model to count, calculate, or compare dates when code can do it exactly.
For a real example of a narrow judgment inside a larger application, see Jev Gates Agent Memory Saves. Its author tested whether proposed agent memories were supported by the original conversation; those author-reported results do not validate the support-message example above.
Next, learn which question type to choose and how to structure state.