typesafe/jev compatible APIFree, public endpoint for the open-weights Laya decision models
(Apache-2.0). It mirrors the request and response format of Cloudflare Workers AI's
typesafe/jev: one state, typed
noul / choice / score questions in, calibrated probabilities out, in a single forward pass.
No account, no API key.
Requests are stored and used to train models. Do not send personal data, secrets or confidential information. By using the API you accept the Terms of Service.
curl https://zaitlabs--laya-jev.eu-west.modal.run/client/v4/accounts/any/ai/run \
--header 'Content-Type: application/json' \
--data '{
"model": "typesafe/jev",
"input": {
"state": "Help! My payouts have been failing for 3 days.",
"questions": {
"is_urgent": {
"type": "noul",
"instructions": "Does this convey urgency?"
},
"department": {
"type": "choice",
"instructions": "Which team should handle this?",
"criteria": {
"billing": "Payments, invoicing, refunds",
"technical": "Bugs, outages, integrations"
}
}
}
}
}'
https://zaitlabs--laya-jev.eu-west.modal.run instead of https://api.cloudflare.com; the account id and any
bearer token are ignored (and never stored) - except a token issued to a gateway, which only selects that
gateway's rate-limit budget."model": typesafe/jev or laya picks a checkpoint by language; or force one with
laya/english, laya/multilingual, laya/typed-decisions.max_tokens_exceeded, never
silently truncated - and, up to 256k tokens, still stored, because they are what a longer-context successor has to learn from. Response headers X-Laya-* tell you which checkpoint answered and why.X-Laya-Cache: hit) that holds a hash and numbers, none of your
text. Hosted in the EU.POST https://zaitlabs--laya-jev.eu-west.modal.run/v1/chat/completions with model
convaiinnovations/laya and a response_format of type json_schema, whose boolean, enum and
bounded-number fields become the questions. It streams, and it answers nothing else - this model does not write text.OpenAPI docs · Terms · input schema · output schema · models · health